mboost-dp1
c++ do-while løkke
- Forside
- ⟨
- Forum
- ⟨
- Programmering
Hej
Jeg skal have lavet en do-while løkke, eller hvad det nu hedder
do {
} while ()
Det som den skal gøre er som følger:
Lige så snart en "Spiller" har nået tallet 0 skal den stoppe, ellers skal den blive ved med at køre fra spiller 1-4 og når spiller 4 er færdig med sin tur så skal den hoppe tilbage til spiller 1.
Jeg skal have lavet en do-while løkke, eller hvad det nu hedder
do {
} while ()
Det som den skal gøre er som følger:
Lige så snart en "Spiller" har nået tallet 0 skal den stoppe, ellers skal den blive ved med at køre fra spiller 1-4 og når spiller 4 er færdig med sin tur så skal den hoppe tilbage til spiller 1.
int stop = 0;
do {
//her indsættes det du skal lave med dine spillere!
if(spiller1==0)
{
stop = 1;
}
if(spiller2==0)
{
stop = 2;
}
if(spiller3==0)
{
stop = 3;
}
if(spiller4==0)
{
stop = 4;
}
} while (stop == 0)
værdien i stop fortæller hvilken spiller der nåede 0
hvis der er to spillere der kan nå nul i samme runde duer dette ikke da det er den spiller nummerordens mæssigt der vil bestemme værdien i 'stop!!
Måske noget ala.
// List of Players
int[] players = new int[4];
// Initial Values
players[0] = 3;
players[1] = 8;
players[2] = 2;
players[3] = 6;
// Active Player
int activePlayer = 0;
while (true)
{
// Iterate over every player
for (int i = 0; i < 4; i++)
{
// Game's over.
if(players[i] == 0)
break;
// Decrease the players value
players[i]--;
}
// All players done, restart
if (activePlayer == 3)
{
activePlayer = 0;
}
// Next Player
else
{
activePlayer++;
}
}
#4 +5
Tak for jeres hurtige svar. Jeg vil selv mene at jeg skal bruge noget ala det #4 skriver.
Jeg har brugt arrays, måske er det lettere at hjælpe hvis i kan se koden.
Den kan hentes her
http://www.megaupload.com/?d=GPA0PZMQ
Tak for jeres hurtige svar. Jeg vil selv mene at jeg skal bruge noget ala det #4 skriver.
Jeg har brugt arrays, måske er det lettere at hjælpe hvis i kan se koden.
Den kan hentes her
http://www.megaupload.com/?d=GPA0PZMQ
http://www.pastebin.com
Der er ingen grund til at uploade en fil på en upload-side, frem for bare at poste koden på en pastebin, eller direkte her i forumet.
Der er ingen grund til at uploade en fil på en upload-side, frem for bare at poste koden på en pastebin, eller direkte her i forumet.
#7
Ok, så poster jeg koden ind her.
...
int main() {
srand(time(NULL)); //set random numbers med time
string navne[4]; //String for 4 spillere
int
spillere = indtast_antal_spillere(navne),
ojne, nyTur,
kurve[]={0,0,0,0},
bager[]={0,0,0,0,0}; //tuborg for array kan kun bruges når de erklæres
//ingen kantede paranteser for array, når funktioner kaldes
laeg_aeg_i_kurv(spillere, kurve);
do { //Efter sidste spiller, så er det spiller 1 tur igen
for(int spillerNr=0; spillerNr<spillere; spillerNr++)
{
do { //Terningkast og skift mellem spillerne
//system("cls");
vis_spilleplade(spillere, kurve, bager, navne);
ojne = kast_terning(navne, spillere, spillerNr);
nyTur = flytaeg(kurve, bager, spillerNr ,ojne);
//cout <<"nyTur="<<nyTur<<endl;
if(nyTur==1 && kurve[spillerNr]>0)
{
vis_spilleplade(spillere, kurve, bager, navne);
cout << "Vil du kaste igen? ja eller nej." << endl;
cin >> igen;
cout << endl;
}
else
{
Sleep(1000); //Delay i 1000 ms
cout << endl;
cout << "Tur slut" << endl;
cout << endl;
igen='n';
}
} while (igen=='j' || igen=='J');
}
if ()
{
}
} while (); //While løkken slutter og starter forfra med mindre en spiller har 0 æg
...
Ok, så poster jeg koden ind her.
...
int main() {
srand(time(NULL)); //set random numbers med time
string navne[4]; //String for 4 spillere
int
spillere = indtast_antal_spillere(navne),
ojne, nyTur,
kurve[]={0,0,0,0},
bager[]={0,0,0,0,0}; //tuborg for array kan kun bruges når de erklæres
//ingen kantede paranteser for array, når funktioner kaldes
laeg_aeg_i_kurv(spillere, kurve);
do { //Efter sidste spiller, så er det spiller 1 tur igen
for(int spillerNr=0; spillerNr<spillere; spillerNr++)
{
do { //Terningkast og skift mellem spillerne
//system("cls");
vis_spilleplade(spillere, kurve, bager, navne);
ojne = kast_terning(navne, spillere, spillerNr);
nyTur = flytaeg(kurve, bager, spillerNr ,ojne);
//cout <<"nyTur="<<nyTur<<endl;
if(nyTur==1 && kurve[spillerNr]>0)
{
vis_spilleplade(spillere, kurve, bager, navne);
cout << "Vil du kaste igen? ja eller nej." << endl;
cin >> igen;
cout << endl;
}
else
{
Sleep(1000); //Delay i 1000 ms
cout << endl;
cout << "Tur slut" << endl;
cout << endl;
igen='n';
}
} while (igen=='j' || igen=='J');
}
if ()
{
}
} while (); //While løkken slutter og starter forfra med mindre en spiller har 0 æg
...
Gå til top
Opret dig som bruger i dag
Det er gratis, og du binder dig ikke til noget.
Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.