if (valg == 1 || 2 || 3) // validering af svaret { cin >> valg; // indtastning af valget } else { // hvis ikke, så hopper den ud
}
switch(valg) { case 1: start_spil(); // hvis der tastes 1, så startes spillet break; case 2: regler(); // hvis der tastes 2, så vises reglerne break; case 3: slut = 1; // hvis der tastes 3, så lukker spillet break; } } while(!slut); // Slut på løkke }
Efter man har skrevet 1 2 eller 3 ved menu punktet, så hopper den videre i programmet. Men den flipper ud hvis man skriver et bogstav. Hvordan gør jeg såen så den ikke gør dette???
I dette særtema om aspekter af AI ser vi på skiftet fra sprogmodeller til AI-agenter, og hvordan virksomheder kan navigere i spændet mellem teknologisk hastighed og behovet for menneskelig kontrol.
Hvilket altid er tilfældet (to er ikke det samme som 0), det du ønsker er:
if(valg == 1 || valg == 2 || valg == 3)
Men du skal starte med at sætte valg til noget, så brugeren altid starter med at vælge noget. Jeg vill nok lave noget i stil med:
do // Do-while løkke { system("cls"); cout << ".....................................(Kalaha)..................................." <<endl; // overskrift cout << "1. Start" << endl << "2. Regler" << endl << "3. Slut" << endl << endl<< "Valg: "; //menuen cin >> valg; switch(valg) { case 1: start_spil(); // hvis der tastes 1, så startes spillet break; case 2: regler(); // hvis der tastes 2, så vises reglerne break; case 3: slut = 1; // hvis der tastes 3, så lukker spillet break; default: cout << "Ulovlig valg!" << endl; } } while(!slut); // Slut på løkke
Og husk den første gyldne regel for kommentarer: Lav ikke kommentarer for det indlysende.
Ville noget lignende som det her ikke virke? (jeg er C++ n00b så forvent ikke det store): Den vil her spørge om et nummer indtil det er et gyldigt et... Du kunne evt. indsætte en fejlbesked eller sådan noget.
int valg=0;
while( valg > 0 || valg < 4 ) //Den forlader ikke while() før nummeret indtastet er gyldigt { cin >> valg; }
switch(valg) { case 1: start_spil(); // hvis der tastes 1, så startes spillet break; case 2: regler(); // hvis der tastes 2, så vises reglerne break; case 3: slut = 1; // hvis der tastes 3, så lukker spillet break; }
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.