Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <stdio.h>
- #include <stdlib.h>
- #include <time.h>
- #include <cstdlib>
- #include <algorithm>
- #include <fstream>
- #include <string>
- #include <sstream>
- using namespace std;
- int main()
- { int u;
- int novac;
- int racun=0;
- int isplata=0;
- string g;
- ifstream savein("savein.txt");
- getline (savein,g);
- stringstream ss;
- ss<<g;
- ss>>novac;
- int maks;
- cout<<"Dobro dosli u igru <KOCKANJE>"<<endl;
- cout<<"Trenutno na racunu imate "<<novac<<" KM"<<endl;
- if (novac==0)
- {
- cout<<"Unesite broj pocetnog novca izmedu 1 i 10, SVAKI listic trosi 1 KM"<<endl;
- cin >>novac;
- while ((novac>10)or(novac<1))
- {
- cout<<"mora broj biti od 1 do 15"<<endl;
- cin>>novac;
- }
- }
- racun=novac;
- int bubanj[48];
- //int listic[6];
- int umeduvremenu[1000][6];
- int tacan[1000][6];
- int pogodeni[1000][6]; // sad je na redu da ovo nekako spojimo sa listicem
- int dobici[35]={11,11,11,11,11,10000,7500,5000,2500,1000,500,300,200,150,100,90,80,70,60,50,40,30,25,20,15,10,9,8,7,6,5,4,3,2,1};
- for (int i=0;i<48;i++)
- {
- bubanj[i]=i+1;
- }
- for (int i=1;i>0;i++)
- {
- cout<<"Ako zelite da kockate ukucajte nesto osim nule. 0 je za procente ili prekidanje igre!"<<endl;
- string x;
- cin >>x;
- if (x=="0")
- {
- cout<<"Ukoliko zelite da vidite procentualnost dobitka na odredenom broju pritisnite 0,u drugom slucaju gasite program"<<endl;
- string w;
- cin>>w;
- if (w=="0")
- {
- cout<<"pritisnite 0 ukoliko zelite da izbacimo sve procente,nesto drugo za odredeni broj"<<endl;
- string a1;
- cin>>a1;
- if (a1=="0")
- {
- for (double q=6;q<49;q++)
- {
- cout<<"Sansa dobitka na izvlacenju broj: "<<q<<" je "<<(q*(q-1)*(q-2)*(q-3)*(q-4)*(q-5))/(8835488640)*100<<" %"<<endl;
- }
- }
- else
- {
- cout<<"unesite broj za koji zelite provjeriti procentualnost"<<endl;
- cout<<"npr. broj 7 je da vam kombinacija izade u prvih 7 brojeva itd."<<endl;
- double e;
- cin>>e;
- cout<<"Sansa dobitka na izvlacenju broj: "<<e<<" je "<<(e*(e-1)*(e-2)*(e-3)*(e-4)*(e-5))/(8835488640)*100<<" %"<<endl;
- }
- }
- else
- {
- break ;
- }
- }
- else
- {
- cout<<"ukoliko zelite igrati bingo ukucajte 1, ukoliko zelite rulet ukucajte 0"<<endl;
- int kocka;
- cin>>kocka;
- if (kocka==1)
- {
- srand(time(0));
- random_shuffle(bubanj,bubanj+48);
- cout<<"unesite broj zeljenih listica,svaki iznosi 1km"<<endl;
- int listic[1000][6];
- cin>>u;
- while ((u>racun)or(u<0))
- {
- cout<<"Nemate dovoljno para na racunu za toliko listica"<<endl;
- cin>>u;
- }
- for (int i=0;i<u;i++)
- { pogodeni[i][6];
- tacan[i][6];
- umeduvremenu[i][6];
- listic[i][6];
- cout<<"unesite brojeve za listic broj "<<i+1<<endl;
- for (int k=0;k<6;k++)
- {
- int c;
- cin>>c;
- if (c==0)
- { racun=racun+1;
- break;
- }
- while ((c>48)or(c<1)or(c==listic[i][0])or(c==listic[i][1])or(c==listic[i][2])or(c==listic[i][3])or(c==listic[i][4])or(c==listic[i][5])or(c==listic[i][6]))
- {
- cout<<"mora broj biti od 1 do 48 i ne smije se ponavljati"<<endl;
- cin>>c;
- }
- listic[i][k]=c;
- }
- }
- for (int i=0;i<u;i++) // NA ISTI FAZON SREDITI I OVO DOLE UKOLIKO JE LISTIC PONISTEN DA NAM DABA NE ODUZIMA PROSTOR POKUSAJ ODMA!!!
- {
- if(listic[i][5]==0)
- {
- maks=0;
- }
- if (maks!=0)
- {
- cout<<"Listic broj: "<<i+1<<" glasi --> ";
- }
- for (int j=0;j<6;j++)
- {
- if (maks!=0)
- {
- cout<<listic[i][j]<<"/";
- }
- }
- if (maks!=0)
- {
- cout<<endl;
- }
- maks=1;
- }
- cout<<endl;
- cout<<"pritisnite 1 kad budete spremni da se brojevi izvuku,a 0 ukoliko zelite jedan po jedan izbacivati"<<endl;
- int m;
- cin>>m;
- if (m==1)
- {
- cout<<endl;
- for (int i=0;i<35;i++)
- {
- cout << bubanj[i];
- cout <<" je broj loptice, izvlacenje: "<<i+1<<endl;
- }
- }
- if (m==0)
- {
- cout<<"ZA IZVLACENJE SVIH UKUCAJTE ODMAH,A ZA PREGLED LISTICA UKUCAJTE LISTICI"<<endl;
- for (int i=0;i<35;i++)
- {
- cout << bubanj[i];
- string l;
- cout <<" broj loptice je: "<<i+1<<endl;
- for (int k=0;k<u;k++)
- for (int j=0;j<6;j++)
- {
- if (listic[k][j]==bubanj[i])
- {
- //cout<<"pogoden je broj "<<listic[k][j]<<" na listicu "<<k+1<<endl; brisemo radi preglednosti
- umeduvremenu[k][j]=listic[k][j];
- }
- }
- if ((i+1)%1==0) // NE KONTAM STO JE OVDJE I U ZAGRADI
- {
- cin >> l;
- if (l=="odmah")
- {
- break;
- }
- if (l=="listici")
- {cout<<endl;
- cout<<"vasi listici su bili:"<<endl;
- for (int i=0;i<u;i++)
- {
- cout<<i+1<<" glasi --> ";
- for (int j=0;j<6;j++)
- {
- cout<<listic[i][j]<<"/";
- cout<<umeduvremenu[i][j]<<"----";
- }
- cout<<endl;
- cout<<endl;
- }
- }
- }
- }
- }
- cout<<endl;
- int pogodeno=0;
- int maksi;
- for (int k=0;k<u;k++) //u ovom dijelu smo otkrili koji su brojevi sa listica pogodeni
- {
- cout<<endl;
- if (listic[k][5]!=0)
- {
- cout<<"Statistika listica broj->"<<k+1; //POOPRAVI OVO JEBENO STO IZBACUJE I ONE KOJE NE TREBA DA IZBACUJE!!!
- maksi=0;
- }
- cout<<endl;
- for (int i=0;i<6;i++)
- {
- for(int j=0;j<35;j++) //vrti bubanj , j<n , n broj izvlacenja
- if (listic[k][i]==bubanj[j])
- {
- cout<<"Broj "<<listic[k][i]<<" je pogoden"<<" u izvlacenju broj: "<<j+1<<endl;
- tacan[k][i]=listic[k][i];
- pogodeni[k][i]=j+1; //ovaj niz predstavlja broj mjesta na kojem su brojevi pogodeni->i pogodeni 1 odgovara listic 1
- }
- }
- }
- for (int k=0;k<u;k++) // Totalno majstorski hahahaha
- for (int j=0;j<6;j++)
- {
- for (int i=0;i<5;i++)
- {
- if (pogodeni[k][i]>pogodeni[k][i+1])
- {
- int tmp;
- tmp=pogodeni[k][i+1];
- pogodeni[k][i+1]=pogodeni[k][i];
- pogodeni[k][i]=tmp;
- }
- }
- }
- int brojac=0;
- for (int i=0;i<u;i++)
- {
- for (int j=0;j<6;j++)
- {
- if(tacan[i][j]!=0)
- {
- brojac=brojac+1;
- }
- if (brojac==6)
- {
- int zadnji;
- cout<<endl;
- cout<<"Cestitamo listic broj "<<i+1<<" je dobitan"<<endl;
- cout<<"Pogodili ste kombinaciju na "<<pogodeni[i][5]<<" izvlacenju"<<endl;
- zadnji=pogodeni[i][5];
- cout<<endl;
- cout<<"Vas dobitak je: "<<dobici[zadnji-1]<<"KM"<<endl;
- isplata=isplata+dobici[zadnji-1];
- }
- }
- brojac=0;
- cout<<endl;
- }
- cout<<endl;
- int mini;
- cout<<"vasi listici su bili:"<<endl;
- for (int i=0;i<u;i++)
- { if (listic[i][5]!=0)
- {
- cout<<i+1<<" glasi --> ";
- mini=0;
- }
- // if (mini!=0)
- {for (int j=0;j<6;j++)
- // {
- cout<<listic[i][j]<<"/";
- }
- cout<<endl;
- // }
- }
- //ovdje se mora pisati sve sto se zeli dok su formirani nizovi jer kad izade iz ovog biracemo nove nizove
- // OVIM VRACAMO NIZOVE U POCETNO PRAZNO STANJE ZA SLIJEDECU PARTIJU!!!
- for (int i=0;i<u;i++)
- {
- for (int j=0;j<6;j++)
- {
- pogodeni[i][j]=0;
- listic[i][j]=0;
- tacan[i][j]=0;
- umeduvremenu[i][j]=0;
- }
- }
- cout<<endl;
- racun=racun-u+isplata;
- cout<<"Stanje na racunu je: "<<racun<<" KM"<<endl;
- ofstream savein("savein.txt");
- string racunstr;
- stringstream pretvori;
- pretvori<<racun;
- racunstr=pretvori.str();
- savein<<racunstr;
- savein.close();
- cout<<"isplata je: "<<isplata<<endl;
- isplata=0;
- }
- if (kocka==0)
- {
- string nboja[1000];
- string nparnost[1000];
- int parnost[1000];
- int vecamanja[1000];
- int tacanbroj[1000];
- for (int k=0;k<1000;k++)
- {
- nparnost[k]="po";
- nboja[k]="69";
- parnost[k]=69;
- vecamanja[k]=69;
- tacanbroj[k]=69;
- }
- int ukupan_ulog1=0;
- int ukupan_ulog2=0;
- int ukupan_ulog3=0;
- int ukupan_ulog4=0;
- int ukupan_ulog=0;
- int ukupan_ulog4b=0;
- int ulog4n[1000];
- int ulog3n[1000];
- int ulog2n[1000];
- int ulog1n[1000];
- int dobitak4a=0;
- int dobitak4b=0;
- int dobitak3=0;
- int dobitak2=0;
- int dobitak1=0;
- int dobio1=0;
- int dobio2=0;
- int dobio3=0;
- int dobio4a=0;
- int dobio4b=0;
- int t1=1;
- int t2=1;
- int t3=1;
- int t4=1;
- int rulet[37];
- int crveno[18]={1,3,5,7,9,12,14,16,18,19,21,23,25,27,30,32,34,36};
- int crno[18]={2,4,6,8,10,11,13,15,17,20,22,24,26,28,29,31,33,35};
- int paran[18];
- int neparan[18];
- for (int n=1;n<19;n++)
- {
- paran[n]=2*n;
- neparan[n]=2*n-1;
- }
- for (int i=0;i<38;i++)
- {
- rulet[i]=i;
- }
- int broj;
- cout<<"Izabrali ste rulet"<<endl;
- cout<<endl;
- srand(time(0));
- random_shuffle(rulet,rulet+38);
- for (int c=0;c>-1;c++)
- {
- broj=rulet[13];
- string boja="crna";
- string parnost="neparan";
- for (int a=0;a<18;a++)
- {
- if (crveno[a]==rulet[13])
- {
- boja="crvena";
- }
- if (rulet[13]==0)
- {
- boja=" ";
- parnost="/";
- }
- if (paran[a]==rulet[13])
- {
- parnost="paran";
- }
- }
- cout<<"Unesite zeljeni broj,mozete se kladiti na:"<<endl;
- cout<<"0 je za pokretanje ruleta"<<endl;
- cout<<"1 je za tacan broj"<<endl;
- cout<<"2 je za boju"<<endl;
- cout<<"3 je za parnost"<<endl;
- cout<<"4 je za preko 18 ili ispod 19"<<endl;
- cout<<"5 je za stanje racuna"<<endl;
- cout<<"6 je za ponistavanje opklada i vracanje na biranje igre!!!"<<endl;
- int t;
- cin>>t;
- int l;
- int v;
- int ulog2;
- int ulog4;
- int bro;
- string p;
- string pa;
- int ulog1;
- if (t==1)
- {
- cout<<"unesite broj koji mislite da ce izaci"<<endl;
- cin >>bro;
- while ((bro<0)or(bro>36))
- {
- cout<<"Broj mora biti od 0 do 36"<<endl;
- cin>>bro;
- }
- tacanbroj[c]=bro; // zeljeni broj je usao u niz pogodanja brojeva
- cout<<"Unesite ulog u KM na taj broj"<<endl;
- cin>>ulog1;
- while ((ulog1>racun)or(ulog1<1))
- {
- cout<<"Nemate dovoljno para na racunu, Ulazite ponovo-> pritisnite 0 za nazad"<<endl;
- cin>>ulog1;
- if (ulog1==0)
- {
- break;
- }
- }
- ulog1n[c]=ulog1;
- ukupan_ulog1=ukupan_ulog1+ulog1;
- racun=racun-ulog1n[c];
- } // kraj t=1
- if (t==4)
- {
- cout<<"unesite 1 za (0,18], 2 za (18,36]"<<endl;
- cin >>l;
- while ((l<0)or(l>2))
- {
- cout<<"Broj mora biti 1 ili 2, 0 je za nazad"<<endl;
- cin>>l;
- if (l==0)
- {
- break;
- }
- }
- vecamanja[c]=l;
- cout<<"Unesite ulog u KM"<<endl;
- cin>>ulog4;
- while ((ulog4>racun)or(ulog4<1))
- {
- cout<<"Nemate dovoljno para na racunu, Ulazite ponovo-> pritisnite 0 za nazad"<<endl;
- cin>>ulog4;
- if (ulog4==0)
- {
- break;
- }
- }
- ulog4n[c]=ulog4;
- ukupan_ulog4=ukupan_ulog4+ulog4;
- racun=racun-ulog4n[c];
- } // t=4 petlja zavrsava
- if(t==2)
- {
- cout<<"unesite crvena ili crna boja->0 je za nazad"<<endl;
- cin >>p;
- while ((p!="crna")and(p!="crvena"))
- {
- cin>>p;
- if (p=="0")
- {
- break;
- }
- }
- nboja[c]=p;
- cout<<"Unesite ulog u KM"<<endl;
- cin>>ulog2;
- while ((ulog2>racun)or(ulog2<1))
- {
- cout<<"Nemate dovoljno para na racunu, Ulazite ponovo-> pritisnite 0 za nazad"<<endl;
- cin>>ulog2;
- if (ulog2==0)
- {
- break;
- }
- }
- ulog2n[c]=ulog2;
- ukupan_ulog2=ukupan_ulog2+ulog2;
- racun=racun-ulog2n[c];
- }
- int ulog3; //stavi ovdje int ulog3a ovo sad samo da bi mi raidlo za gore?
- int ulog3b;
- if (t==3)
- {
- cout<<"unesite paran ili neparan->0 je za nazad"<<endl;
- cin >>pa;
- while ((pa!="paran")and(pa!="neparan"))
- {
- cin>>pa;
- if (pa=="0")
- {
- break;
- }
- }
- nparnost[c]=pa;
- cout<<"Unesite ulog u KM"<<endl;
- cin>>ulog3;
- while ((ulog3>racun)or(ulog3<1))
- {
- cout<<"Nemate dovoljno para na racunu, Ulazite ponovo-> pritisnite 0 za nazad"<<endl;
- cin>>ulog3;
- if (ulog3==0)
- {
- break;
- }
- }
- ulog3n[c]=ulog3;
- ukupan_ulog3=ukupan_ulog3+ulog3;
- racun=racun-ulog3n[c];
- }
- if (t==5)
- {
- cout<<"Trenutno stanje na vasem racunu je: "<<racun<<" KM"<<endl;
- }
- cout<<endl;
- if (t==6)
- {
- ukupan_ulog=ukupan_ulog1+ukupan_ulog2+ukupan_ulog3+ukupan_ulog4;
- cout<<"ukupan ulog je"<<ukupan_ulog<<endl;
- cout<<"Jeste li sigurni? Ukucajte da za potrvdu."<<endl;
- string h;
- cin>>h;
- cout<<endl;
- if (h=="da")
- {
- racun=racun+ukupan_ulog;
- break;
- }
- }
- if (t==0)
- {
- for (int x=0;x<1000;x++)
- {
- if (tacanbroj[x]==rulet[13])
- {
- dobio1=ulog1n[x]*36;
- cout<<"CESTITAMO! POGODILI STE TACAN BROJ"<<endl;
- dobitak1=dobitak1+dobio1;
- // dobitakt=0;
- }
- if ((vecamanja[x]==1) and (rulet[13]<19))
- {
- dobio4a=ulog4n[x]*2;
- dobitak4a=dobitak4a+dobio4a;
- cout<<endl;
- cout<<"Cestitamo, pogodili ste velicinu"<<endl;
- }
- if ((vecamanja[x]==2) and (rulet[13]>18))
- {
- dobio4b=ulog4n[x]*2;
- dobitak4b=dobitak4b+dobio4b;
- cout<<endl;
- cout<<"Cestitamo, pogodili ste velicinu"<<endl;
- }
- if(nboja[x]==boja)
- {
- dobio2=ulog2n[x]*2;
- dobitak2=dobitak2+dobio2;
- cout<<endl;
- cout<<"Cestitamo, pogodili ste boju"<<endl;
- }
- if(nparnost[x]==parnost)
- {
- dobio3=ulog3n[x]*2;
- dobitak3=dobitak3+dobio3;
- cout<<endl;
- cout<<"Cestitamo, pogodili ste parnost"<<endl;
- }
- }
- cout<<"Izvuceni broj je.. "<<endl;
- cout<<"broj: "<<rulet[13]<<boja<<endl;
- racun=racun+dobitak2+dobitak3+dobitak4a+dobitak4b+dobitak1;// ovdje isto radi al izbaci samo zadnji ne sabere greska samo za t=1
- ofstream savein("savein.txt");
- string racunstr;
- stringstream pretvori;
- pretvori<<racun;
- racunstr=pretvori.str();
- savein<<racunstr;
- savein.close();
- //-> OVDJE RACUN IZBACVAT U NOTEPAD
- cout<<endl;
- cout<<"Trenutno stanje na racunu iznosi: "<<racun<<" KM"<<endl;
- dobitak2=0;
- dobitak3=0;
- dobitak4a=0;
- dobitak4b=0;
- dobitak1=0;
- srand(time(0));
- random_shuffle(rulet,rulet+38);
- break;
- }
- } // zavrsava beskonacna petlja unosenja opklada za rulet
- } //dovdje traje rulet, ono if kocka jednako 0 igraj ruleta
- if (racun==0)
- {
- cout<<" BANKROTIRALI STE. KRAJ IGRE"<<endl;
- cout<<"napisite nam nesto za pozdrav :) i hvala sto ste igrali"<<endl;
- string kraj;
- cin>>kraj;
- break;
- } //ovdje zavrsava else onaj ako zelimo listic, a nakon ovog se vraca u beskonacnu petlju
- }
- //ovdje se pise ono sto se desava nakon zavrsetka odabranog i pitanja sta sad hocemo od njeg koji klinac
- if (racun==0)
- {cout<<"BANKROTIRALI STE. KRAJ IGRE"<<endl;
- cout<<"napisite nam nesto za pozdrav i hvala sto ste igrali :)"<<endl;
- string kraj1;
- cin>>kraj1;
- break;}
- } //zavrsetak beskonacne petlje sve dole je kraj programa i ne pise se
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement