Hvis du gør sådan her:
while(x < y)
er det kun denne her linje der bliver gentaget
og ikk denne her
du skal gøre sådan her:
while(x < y)
{
så bliver denne linje
og denne her gentaget
}
og denne her (der er uden for { og }) gør ikke
Desuden chekker du kun om guess == number den første gang.
prøv at forestille dig du gætter for lavt. Så bliver disse to linjer:
cout << "Too low, Try again!" << endl;
cin >> guess;
gentaget indtil guess < number bliver false (når guees ikke er < number)
vis dit gæt derefter er for højt(rimlig stor chance) bliver disse to linjer gentaget
cout << "Too high, Try again!" << endl;
cin >> guess;
indtil dit guess enten er = eller lavere end dit number, og derefter lukker programmet.
Vis du selv vil finde ud af hvordan man kan gøre, skal du ikke læse det næste..
.
.
.
Jeg ville kun bruge en while løkke:
int number = 2;
int guess;
cout << "Now i'm thinking of a number from 1-15" << endl;
cout << "Your guess: " << endl;
cin >> guess;
while(number != guess)
{
if(guess < number)
{
cout << "Too low, Try again!" << endl;
cin >> guess;
break;
}
if(guess > number)
{
cout << "Too high, Try again!" << endl;
cin >> guess;
break;
}
}
//vis vi når her til er guess == number
cout << "Good! Your right!" << endl;
Jeg har ikke prøbet at compilere det, så der er sikkert nogle fjel. Men så vidt jeg lige kan se burde det virke.
Der er sikkert også bedre måder at gøre det på.
.:edit:.
Martins måde er nok lidt lettere at gennemskue. Jeg ville i hvert fald fortrække den, men nu har du 2 at vælge mellem
Indlæg senest redigeret d. 23.12.2008 17:41 af Bruger #13669