NitroLr Skrevet 15. august 2004 Del Skrevet 15. august 2004 Jeg skrev ett bokstav gjetteprogram. Hvis man skriver inn feil bokstav, får man en beskjed om at bokstaven er feil, fulgt av et nytt forsøk. Når alle forsøkene er brukt opp, slutter programmet. ( cin.get() ) Jeg vil at hvis man skriver inn riktig bokstav skal programmet stoppe der. Her er while-løkken slik den ser ut nå. while(tries>=0) { cout<<"\n\n"<<x<<"\n\n"; cin>>k; if (k=='k') cout<<"\n\n"<<xxz<<"\n\n"; () else cout<<"\n\n"<<xx<<"\n\n"; cout<<"Du har "<<tries<<" forsoek igjen."; tries=tries-1; } cin.get(); Men hvordan får jeg programmet til å slutte hvis bokstaven er riktig? Lenke til kommentar
søppel Skrevet 15. august 2004 Del Skrevet 15. august 2004 Ved hjelp av break kan du hoppe ut av gjeldende "loop-block", slik f.eks.: #include <iostream> using namespace std; int main() { char correct_answer = 'r'; char read_char; unsigned int tries = 5; while(tries > 0) { cout << "Make a guess: "; cin.get(read_char); cin.ignore(); if(read_char == correct_answer) break; tries--; cout << tries << " tries left.." << endl; } if(read_char == correct_answer) cout << "Correct, you made it!" << endl; else cout << "You ran out of chances .." << endl; return(0); } // main Lenke til kommentar
NitroLr Skrevet 15. august 2004 Forfatter Del Skrevet 15. august 2004 Takker så mye. Lenke til kommentar
reznor15 Skrevet 18. august 2004 Del Skrevet 18. august 2004 Du kan jo også bruke funksjoner fra <string> if(!strcmpi("r", correct_answer)); { cout<<"Riktig!"; } else { cout<<"Feil!"; } Lenke til kommentar
søppel Skrevet 18. august 2004 Del Skrevet 18. august 2004 (endret) Om jeg ikke tar helt feil er strcmp fra string.h (C-biblioteket), ikke string (C++-biblioteket). Så i C++ blir det #include <cstring> ( http://www.cpp.no/lars/ticpp-v1/Chapter02.html#Heading78 ) Edit: NAME strcmp, strncmp - compare two strings SYNOPSIS #include <string.h> int strcmp(const char *s1, const char *s2); Endret 18. august 2004 av søppel Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå