Pirotechnik Temat założony przez niniejszego użytkownika |
Jak zrobic aby program powtarzal te funkcje kilka razy » 2010-02-11 20:31:14 #include <iostream> #include <conio.h> #include <cstring>
int main() { using namespace std; int i; i = 1; int proba; proba = 0; const short rozmiar = 50; char tabgracz[ 2 ][ rozmiar ]; char slowo[ rozmiar ]; char zslowo[ rozmiar ]; char kategoria[ rozmiar ]; int wynik[ 2 ]; wynik[ 0 ] = 0; wynik[ 1 ] = 0; int rundy; cout << " Gra w haselka\n Programista: Grzegorz Wegrzyn\n"; getch(); system( "cls" ); cout << "Podaj nazwe gracza 1: "; cin.get( tabgracz[ i ], rozmiar ).get(); if( i = 1 ) { --i; } else ++i; cout << "Podaj nazwe gracza 2: "; cin.get( tabgracz[ i ], rozmiar ); cin.get(); system( "cls" ); cout << " Gracz " << tabgracz[ 0 ] << endl; getch(); system( "cls" ); cout << "Podaj kategorie a potem slowo: \nKategoria: "; cin.get( kategoria, rozmiar ).get(); cout << "Haslo: "; cin.get( slowo, rozmiar ); cin.get(); system( "cls" ); cout << " Gracz " << tabgracz[ 1 ]; getch(); system( "cls" ); cout << "Kategoria: " << kategoria << endl; do { cin >> zslowo; ++proba; cout << "Proba: " << proba << endl; } while( strcmp( zslowo, slowo ) ); system( "cls" ); cout << "Kategoria: " << kategoria << "\nHaslo: " << slowo << endl; cout << "\nBrawo!! Udalo ci sie za " << proba << " razem!!"; getch(); cout <<(( proba < 10 ) ? ++wynik[ i ] : --wynik[ i ] ); system( "cls" ); cout << "Wyniki po rundzie: " << tabgracz[ 0 ] << " : " << wynik[ 1 ] << endl; cout << " " << tabgracz[ 1 ] << " : " << wynik[ 0 ] << endl; getch(); system( "cls" ); return( 0 ); } |
|
Pirotechnik Temat założony przez niniejszego użytkownika |
» 2010-02-11 20:32:58 Jak napisalem w temacie mam problem. Jak zrobic aby program mi powtarzal kilka razy ten program?? |
|
dmx81 |
» 2010-02-11 21:19:16 nie przeanalizowalem kodu, jednak wiekszosc "powtarzalnych" operacji wykonuje sie w petli. jesli chcesz, aby program wykonal sie okreslona ilosc razy, mozna np uzyc petli for, jesli ma sie powtarzac, az ktos sam zechce przerwac program, np petla while, ewentualnie tez for - jeden warunek to okreslona liczba petli || drugi warunek - np esc. no i wiadomo, petle zaczynamy tam, gdzie program powinien zaczac powtarzanie, a zamykamy, kiedy pierwsze przejscie jest wykonane i normalnie by sie mial zakonczyc.... ale cos mi sie wydaje, ze piszac taki program, to o tych sprawach na pewno juz wiesz i byc moze cos innego jest tu problemem... |
|
Pirotechnik Temat założony przez niniejszego użytkownika |
» 2010-02-12 08:09:51 Masz racje probowalem juz z petla while, do..while i for ale jak zaczyna sie powtarzanie petli to przeskakuje mi wszystkie polecenia i konczy prace. nie wiem dlaczego!!??
|
|
malan |
» 2010-02-12 14:29:01 My tym bardziej nie wiemy :). Pokaż kod. |
|
dmx81 |
» 2010-02-12 15:31:25 cout << "Podaj nazwe gracza 1: "; cin.get( tabgracz[ i ], rozmiar ).get(); if( i = 1 ) { --i; } else ++i;
cout << "Podaj nazwe gracza 2: "; cin.get( tabgracz[ i ], rozmiar ); cin.get(); system( "cls" );
to napewno daloby sie ladniej napisac z petla for nie musialbys warunku if dawac tak troche dla mnie zawilego w tym wypadku - bo wczesniej deklarujesz int i=1, rozumiem ze chodzi, aby w drugim kroku i bylo zmienione odpowiednio, ale moze sprobuj z krocej, bardziej przejrzyste :) a w ktorym miejscu dawales petle? ja bym np dal przed ta petla for, ktora podalem dla przykladu, a zamknal prawie na samym koncu, po wyswietleniu wynikow - np po wyswietleniu wynikow zapytac, czy grac jeszcze raz - T - graj dalej, N - przerwij, a petla by byla while(odpowiedz!N){... cin>>odpowiedz;getch();} |
|
« 1 » |