Cześć, rozwiązuje zadania z egazminów z poprzednich lat i natknąłem się na ciekawe zjawisko.
int x = 121; int y = 5;
cout << "x = " << x << " y = " << y << endl;
if((x = 0) || (y = 3))
cout << "x = " << x << " y = " << y << endl;
cout << "x = " << x << " y = " << y << endl;
Wyświetla:
x = 121 y = 5
x = 0 y = 3
x = 0 y = 3
int x = 121; int y = 5;
cout << "x = " << x << " y = " << y << endl;
if((x = 5) || (y = 3))
cout << "x = " << x << " y = " << y << endl;
cout << "x = " << x << " y = " << y << endl;
Wyświetla:
x = 121 y = 5
x = 5 y = 5
x = 5 y = 5
Według mnie powinno być: x = 5, y = 3, dlatego nie za bardzo rozumiem dlaczego y = 3 nie zostało przypisane. Wiem że jest to może dość niekonwencjonalny problem raczej pewnie kwesta języka.
Z góry dzięki za pomoc