Gra w c++ jednoreki bandyta

0

Witam, mam na zaliczenie napisanie gry, temat wybrałem sobie dużo wcześniej. Mam problem iż nie mogę dodać monet do gry, wpisuje np. 3 monety ale program działa ciągle, a powinno po 3 losowaniach się zakończyć. Również nie rozumiem co muszę zmienić żeby nie losowało mi w taki sposób że za klikniecie jeden raz opcji 1, wyświetla mi 2 rzędy losowania, chciałbym również to zmienić, załączam tutaj mój kod                               

#include <iostream>
#include <conio.h>
#include <windows.h>
#include <cstdlib>
#include <time.h>
#include <ctime>
using namespace std;

int main(int argc, char** argv) {
    setlocale(LC_ALL, "");

    
    
    
    int wybor;
    string imie;
    cout<<"Podaj swój nick"<<endl;
    cin>>imie;

    cout<<"Witaj"<<" "<<imie<<endl;
    Sleep (1000);
    system("cls");
    
    
    int moneta;
    cout<<"Podaj ile chcesz wrzucić monet"<<endl;
    cin>>moneta;
    for (int i=0; i<moneta; i++)
    {
    if (moneta==0)
    {
        cout<<"Nie masz pięniedzy na dalszą grę"<<endl;
    }else    
    

    srand (time(NULL));
    
    int tabo[3]={};

    while(true){
    cout<<"1.Nowa gra"<<endl<<"2.Koniec"<<endl;
    cin>>wybor;
    switch (wybor){
        case 1:
            cout<<"Witaj, zaraz rozpocznie sie twoja gra"<<endl;
            Sleep(1000);
            system("cls");
            for (int i=0; i<3; i++){
                 tabo[i]=rand()%9+1;
                 cout<<tabo[i];
            }
            cout<<endl;
            //(tabo[0]==i)&&//
            if ((tabo[1]==tabo[0])&&(tabo[2]==tabo[0])){
            cout<<"Wygrales!"<<endl;
            }else if(tabo[1]==tabo[0]){

                     tabo[2]=rand()%9+1;
                     cout << tabo[0] << tabo[1] << tabo[2] << endl;
                     if(tabo[2]==tabo[0]){
                        cout<<"Wygrales!"<<endl;
                     }

            }else if (tabo[2]==tabo[0]){

                     tabo[1]=rand()%9+1;
                     cout << tabo[0] << tabo[1] << tabo[2] << endl;
                     if(tabo[1]==tabo[0]){
                        cout<<"Wygrales!"<<endl;
                     }

            }else if(tabo[2]==tabo[1]){

                     tabo[0]=rand()%9+1;
                     cout << tabo[0] << tabo[1] << tabo[2] << endl;
                     if(tabo[0]==tabo[1]){
                        cout<<"Wygrales!"<<endl;
                     }

            }else
            cout << tabo[0] << tabo[1] << tabo[2] << endl;
            cout<<"Próbuj dalej"<<endl;
            break;
           

            case 2:
                exit (0);
                break;
    }

}

}

    return 0;
}

                                                                                                              

0
  1. Zmienne lokalne zawsze... egh aby nie użyć trudnych słuf ;c... zawsze daj im jakaś wartość startowa...
    Zmienne lokalne to te które są w funkcjach , int mainie itp.

  2. nie używaj liter polskich w konsoli ś ć ń ź itp.

  3. nie wiem jak gra powinna działać ale przynajmniej w moim przypadku działa ona...
    w tym sensie że nie mam żadnego "inf. loop-a" a to wspominałeś ... ( chyba )

1 użytkowników online, w tym zalogowanych: 0, gości: 1