(C++) Program robi tylko 1 instrukcję!


(Skibapaf) #1

Witam! Jestem nowy na tym forum. Od wczoraj zajmuje się C++. Doszedłem do pętli for (w nauce), i chciałem powtórzyć sobie instrukcje if. Pierwszy program działał bez zarzutów (obliczający BMI), za to z drugim mam problem. Oto on:

#include

#include


using namespace std;


float a;

float b;

float wynik;


int main()

{

    cout<<"Wpisz 1 liczbe: ";

    cin>>a;

    cout<<"Wpisz 2 liczbe: ";

    cin>>b;

    cout<<"Meny wyboru:"<
    cout<<"[1] Dodac"<
    cout<<"[2] Odjac"<
    cout<<"[3] Pomnozyc"<
    cout<<"[4] Podzielic"<
    cout<<" *********************************************************"<
    cout<<"Wpisz wynik z menu wyboru: ";

    cin>>wynik;

        if (wynik=a+b)

    cout<<"Dodales" << a << "do" << b << "!" <
    else if (wynik=a-b)

    cout<<"Odjales" << a << "od" << b << "!" <
    else if (wynik=a*b)

    cout<<"Pomnozyles" << a << "przez" << b << "!" <
    else if (wynik=a/b)

    cout<<"Dodales" << a << "przez" << b << "!" <
    else

    cout<<"Nie znam takiego wyniku!";

    getch();

    return 0;

}

Mam Dev-C++ 4.9.9.2

Używałem i

Program ma przyjąć 2 liczby (a i b), następnie przyjąć wynik (wynik) i stwierdzić czy to dodawanie, odejmowanie, mnożenie czy dzielenie i napisać to. Albo napisać _ "Nie znam takiego wyniku" _


(Mrowa 84) #2

cout<<"Dodales" << a << "do" << b << "!" <

tutaj nie ma spacji

Napisz ze spacjami, miedzy " "

cout << "Dodales " << a << " do " << b << " !" << endl;


(Skibapaf) #3

Dzięki, a co z głównym problemem?


(Domanskam) #4

Bo = to przypisanie a nie porównanie. w c/c++ to co jest 0 jest fałszem, to co jest różne od 0 jest prawdą.

Porównanie to ==,

czyli

if (wynik==a+b)


(Skibapaf) #5

Wielkie Ci dzięki! Teraz już wiem! !!