Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Jak zrobic aby program powtarzal te funkcje kilka razy

Ostatnio zmodyfikowano 2010-02-12 15:31
Autor Wiadomość
Pirotechnik
Temat założony przez niniejszego użytkownika
Jak zrobic aby program powtarzal te funkcje kilka razy
» 2010-02-11 20:31:14
C/C++
#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" );
   
    // rozgrywka
    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();
   
    //-------Wyniki
    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 );
}
P-13786
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??
P-13787
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...
P-13788
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!!??
P-13798
malan
» 2010-02-12 14:29:01
My tym bardziej nie wiemy :). Pokaż kod.
P-13813
dmx81
» 2010-02-12 15:31:25
C/C++
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
C/C++
for( i = 0; i < 2; i++ )
//cout pytanie o imie gracza nr[i+1]
//cin zapisanie w tablicy [i]
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();}
P-13818
« 1 »
  Strona 1 z 1