Problem z wykonującą się całą pętlą while
Ostatnio zmodyfikowano 2014-10-24 21:13
Fanatone Temat założony przez niniejszego użytkownika |
Problem z wykonującą się całą pętlą while » 2014-10-24 21:02:17 Witam tak jak w nazwie tematu. Nie mogę sobie poradzić z zakończeniem pętli w odpowiednim momencie. Na razie testuje sobie ubogą wersję walki pomiędzy dwoma graczami. while( g1.hp > 0 && g2.hp > 0 ) { tura++; int atak1 = rand() %( g1.Amax - g1.Amin + 1 ) + g1.Amin; g2.hp = g2.hp - atak1; cout << tura << ": " << g1.nazwa << " zadaje " << g2.nazwa << " " << atak1 << " obrazen. (" << g2.nazwa << " " << g2.hp << " hp)\n"; int atak2 = rand() %( g2.Amax - g2.Amin + 1 ) + g2.Amin; g1.hp = g1.hp - atak2; cout << tura << ": " << g2.nazwa << " zadaje " << g1.nazwa << " " << atak2 << " obrazen. (" << g1.nazwa << " " << g1.hp << " hp)\n"; }
Chciałbym zrobić gdy g1.hp lub g2.hp jest mniejsze od 0 to już nie wykonuje się drugi fragment kodu. Już pisałem przeróżne instrukcje warunkowe na atak1 i atak2 lecz nic to nie dało. Zresztą chciałbym aby pętla while załatwiała wszystko i spełniała swoje zadanie czyli by się wykonywała gdy g1.hp > 0 && g2.hp > 0. Chciałbym aby mi ktoś wytłumaczył ponieważ sam chciałbym to zrealizować. Dziękuje i pozdrawiam. |
|
1aam2am1 |
» 2014-10-24 21:09:03 Pomiędzy atakami dwóch graczy wstaw warunek if warunkujący wyjście z pętli (gdy gracz g2 ma mniej niż zero to break) |
|
Fanatone Temat założony przez niniejszego użytkownika |
» 2014-10-24 21:13:46 Dziękuje. Problem kilku dni rozwiałeś/łaś w ciągu 7 minut. :) |
|
« 1 » |