1. Słusznie, słusznie... w linijce 5 brakuje średnika
int waga, wzrost, x; // Teraz dobrze
2. To nie wszystko. Po co takie coś:
cout << "Podaj swoja waga: " << ;
Powinno być tak:
cout << "Podaj swoja waga: ";
3.
if (x<18.5); // źle!
cout << "Niedowaga";
Twój program ZAWSZE wypisze "Niedowaga" ponieważ postawiłeś średnik bezpośrednio po nawiasie if. Z resztą if'ów jest podobnie. Pokasuj te średniki:
if (x<18.5) // Teraz if zadziała :)
cout << "Niedowaga";
4. Kolejny błąd, to to, że waga, wzrost i x są typu całkowitego int. A skoro te zmienne są całkowite, to wyrażenie:
x=waga/(wzrost*wzrost)
przypisze Ci do zmiennej x liczbę całkowitą. A skoro x jest liczbą całkowitą, to bez sensu sprawdzać taki warunek:
if( x < 18.5 )
Mój kompilator wypisuje mi warninga, że porównuję int z double. Ponieważ w C++ 18.5 jest traktowane jako double. Są to tak zwane stałe dosłowne... kiedyś się dowiesz ;-)
Zmień "int waga, wzrost, x;" ------------> "double waga, wzrost, x;"
No no... moja rada... uważnie pisz kod dopóki nie będziesz tego robił odruchowo ;-)