E sada ide glavni deo koda.
Prvo se deklarišu neke važne promenjljive koje će se koristiti u kodu:
Kod:
int iBrojac = 0;
int iRed, iKolona;
char cKomanda;
int nStatus;
Na ovom mestu jedna važna napomena u vezi promenjljive „cKomanda“. Ona se koristi u programu kada je potrebno učitati od korisnika određenu opciju iz menija, odnosno kada korisnik treba da izabere opciju u glavnom meniju. Iako su ovde u pitanju brojevi (0,1,2) da smo iskoristili „int“ umesto „char“ imali bi smo ozbiljan problem sa programom. Naime, glupostima korisnika programa nikad kraja pa programer uvek treba da se postavi u poziciju krajnjeg korisnika kada testira svoj program. Da smo ovde iskoristili „int“ tip podataka za skladištenje unetog broja imali bi smo problem ako bi korisnik recimo uneo neko slovo ili znak. U tom slučaju bi posledice bile nepredvidive i pored činjenice da je kasnije u „switch“ petlji ostavljeno mesta za „provokaciju“ programa. Zato se pri unosu opcije u glavnom meniju uvek koristi tip podataka „char“.
Kod:
do {
//Glavna petlja Glavnog menija
//Ispis izgleda glavnog menija
for(iRed = 1 ;iRed <= 3;iRed++){
for(iKolona = 1 ;iKolona <= 40; iKolona++){
if((iRed == 2) && (iKolona == 1)){
cout << "****** KOSTOLACKA NARODNA LUTRIJA ******";
iKolona += 39;
continue;
} else {
cout << "*";
}
}
cout << endl;
}
cout << "\nIzaberite opciju:\n" << endl;
cout << "\t1. Promena broja kuglica\n";
cout << "\t2. Izvlacenje!!\n";
cout << "\t0. Necu vise da se igram :)\n\n";
cout << "\tVas izbor (0-3): ";
cin >> cKomanda; // unos komande
//switch petlja koja kontolise granjanje glavnog programa
switch (cKomanda){
case '0':
// opcija za izlazak iz programa
nStatus = 0;
break;
case '1':
// promena broja kuglica
PromenaNrKuglica();
break;
case '2':
//izvlacenje
Izvlacenje();
SortiranjeNiza();
IspisKombinacije();
break;
default:
// opcija koja se izvrsava po defaultu
cout << "\nPrestanite da se izmotavate i unesite broj od 0 do 2!!!\n\n";
cout << "ENTER za nastavak....!\n";
fflush(stdin);
cin.get();
}
} while (nStatus);