Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

[VC++] - Obliczanie NWD i NWW

CiZ7 21 Kwi 2014 22:00 1230 5
  • #1 21 Kwi 2014 22:00
    CiZ7
    Poziom 5  

    Witam. Mam do zrobienia programik w środowisku Visual C++, który ma liczyć najmniejszy wspólny dzielnik i największą wspólną wielokrotność.
    Ma to wyglądać mniej więcej tak:

    [VC++] - Obliczanie NWD i NWW


    Zabrałem się do tego - dodałem buttony, labelki, textboxy tak jak na obrazku.
    "Przepis" na NWD i NWW znam - robiłem takie rzeczy w gołym C++ (w Dev'ie)

    Jednak w którym miejscu i jak zdefiniować tą funkcję ?
    Póki co zrobiłem tylko takie coś:

    Kod: cpp
    Zaloguj się, aby zobaczyć kod



    Tak to u mnie wygląda:
    [VC++] - Obliczanie NWD i NWW

    label5 i label6 dodałem jako pomocnicze, jednak mimo licznych prób nie dałem rady :)

    Ma to wyglądać tak:
    W textboxy wpisuję 2 liczby, które są wczytywane i podstawiane ze a i b.
    Następnie ma być funkcja do obliczania nwd i nnw.
    Po jej zakończeniu wyniki nwd i nnw są wysyłane do tych dwóch labelek.

    Pomysł jest.. Tylko jak to zrobić?

    Tu mam funkcję z C++, którą kiedyś robiłem:
    Kod: cpp
    Zaloguj się, aby zobaczyć kod



    Jak i gdzie ją wrzucić do Visuala?

    0 5
  • Pomocny post
    #2 21 Kwi 2014 22:04
    mickpr
    Poziom 39  

    CiZ7 napisał:
    Jednak w którym miejscu i jak zdefiniować tą funkcję ?
    W "ciele" (definicji) klasy (między
    Kod: cpp
    Zaloguj się, aby zobaczyć kod
    ...a....
    Kod: cpp
    Zaloguj się, aby zobaczyć kod
    Najlepiej na początku - przed funkcjami (metodami) klasy.
    CiZ7 napisał:
    label5 i label6 dodałem jako pomocnicze
    Po co? Nie możesz zdefiniować sobie zmiennych i używać ich "jak w DEV-ie" ?

    0
  • #3 21 Kwi 2014 22:19
    CiZ7
    Poziom 5  

    mickpr napisał:
    CiZ7 napisał:
    Jednak w którym miejscu i jak zdefiniować tą funkcję ?
    W "ciele" (definicji) klasy (między
    Kod: cpp
    Zaloguj się, aby zobaczyć kod
    ...a....
    Kod: cpp
    Zaloguj się, aby zobaczyć kod
    Najlepiej na początku - przed funkcjami (metodami) klasy.
    CiZ7 napisał:
    label5 i label6 dodałem jako pomocnicze
    Po co? Nie możesz zdefiniować sobie zmiennych i używać ich "jak w DEV-ie" ?



    Zrobiłem teraz takie coś:
    Kod: cpp
    Zaloguj się, aby zobaczyć kod



    Nie wiem już sam.. Gubię się w tym wszystkim, bo męczy się kilka godzin nad tym..

    Sypie błędami ciągle:
    Code:
    1>------ Build started: Project: nww, Configuration: Release Win32 ------
    
    1>Compiling...
    1>nww.cpp
    1>c:\users\mati\documents\visual studio 2008\projects\nww\nww\Form1.h(29) : error C3845: 'nww::Form1::azap': only static data members can be initialized inside a ref class or value type
    1>c:\users\mati\documents\visual studio 2008\projects\nww\nww\Form1.h(29) : error C3845: 'nww::Form1::bzap': only static data members can be initialized inside a ref class or value type
    1>c:\users\mati\documents\visual studio 2008\projects\nww\nww\Form1.h(30) : error C2059: syntax error : 'while'
    1>c:\users\mati\documents\visual studio 2008\projects\nww\nww\Form1.h(31) : error C2334: unexpected token(s) preceding '{'; skipping apparent function body
    1>c:\users\mati\documents\visual studio 2008\projects\nww\nww\Form1.h(204) : warning C4244: '=' : conversion from 'double' to 'int', possible loss of data
    1>c:\users\mati\documents\visual studio 2008\projects\nww\nww\Form1.h(205) : warning C4244: '=' : conversion from 'double' to 'int', possible loss of data
    1>c:\users\mati\documents\visual studio 2008\projects\nww\nww\Form1.h(205) : error C2106: '=' : left operand must be l-value
    1>Build log was saved at "file://c:\Users\Mati\Documents\Visual Studio 2008\Projects\nww\nww\Release\BuildLog.htm"
    1>nww - 5 error(s), 2 warning(s)
    ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

    0
  • Pomocny post
    #4 21 Kwi 2014 22:32
    mickpr
    Poziom 39  

    Widzę, że nie znasz różnic między C, a C++

    Kod: cpp
    Zaloguj się, aby zobaczyć kod

    Za takie coś powinienem sam się spoliczkować... bo to TY powinieneś to napisać.
    NWD zostawiłem dla ciebie.

    0
  • #5 22 Kwi 2014 09:40
    CiZ7
    Poziom 5  

    Dzięki! Jesteś wielki! :) Uratowałeś mi życie :)
    NWD zrobię już sobie sam analogicznie.

    PS. Był jeden mały błąd i nie wyświetlało wyniku, ale sam szybko doszedłem co było źle w kodzie od Ciebie:

    Kod: cpp
    Zaloguj się, aby zobaczyć kod


    Zmieniłem na:
    Kod: cpp
    Zaloguj się, aby zobaczyć kod


    I wszystko idealnie działa.


    Znasz może jakieś przydatne strony/książki, z którym mógłbym się nauczyć podstaw Visual C++?


    ---------------------------

    Napisałem sam to NWD, lecz coś nie działa. Kompiluje się, program się otwiera, jednak nie wyświetla żadnych wyników w label4. Co tu jest źle? Zrobiłem analogicznie do NWW.


    Kod: cpp
    Zaloguj się, aby zobaczyć kod

    0
  • #6 22 Kwi 2014 11:49
    mickpr
    Poziom 39  

    Podstaw moją metodę:

    Kod: cpp
    Zaloguj się, aby zobaczyć kod

    0