2010-06-28 2 views
0

Essayer de coder une estimation combien de gumballs dans le pot gumballs, quelque chose. Il y a deux problèmes que je continue à recevoir:Combien de boules de gomme dans le pot. 2 erreurs

  1. Il est censé dire si la conjecture est trop élevé ou faible, mais qui ne se produit que lorsque j'entre un nombre de plus de 1000 et il dit:

Entrez votre estimation: 1001
Trop haut!

Trop bas!

Entrez votre estimation:

  1. Si vous tapez une lettre ou une phrase, il va dire détraquer:

Entrez votre estimation:
Trop Haute!

Trop bas!

mais il continue à dire que vers quelques centaines peut-être même un millier de fois par minute -.-

#include<iostream> 
#include<ctime> 
using namespace std; 

int main(void) 
{ 
    int iGumballs; 
    int iUserguess; 
    int iGuesses = 0; 

    while(true) 
    { 
      system("CLS"); 
      cin.clear(); 
      iGuesses = 0; 

    srand(static_cast<unsigned int>(time(0))); 
    iGumballs = rand()%1000+1; 
    cout << "How many gumballs are in the gumball jar, you guess!" << endl; 
    do 
    { 
     cout << "Enter your guess: "; 
    cin>> iUserguess; 
    if(iUserguess > iGumballs) 
    { 
        cout << "Too High!" << endl << endl; 
    } 
    if(iUserguess > iGumballs) 
    { 
        cout << "Too Low!" << endl << endl; 
    } 
    iGuesses ++; 
}while(iUserguess > iGumballs || iUserguess < iGumballs); 
cout << "You guessed the right amount of gumballs! High Five!" << endl << endl; 
cout << "You took" << iGuesses << " guesses" << endl << endl; 
system("PAUSE"); 
} 
return 0; 
} 
+2

Lorsque vous posez une question sur la source, vous devriez la garder ici afin que les gens puissent la voir et ne pas l'ignorer. Surtout quand il n'y a aucune garantie que votre lien externe sera en place dans 3 ans. Toutes mes excuses pour ma mise en forme – Stephen

+0

Cela ressemble, à première vue, à un problème de devoirs. Bien qu'il n'y ait rien de mal à demander de l'aide pour vos devoirs sur ce site, assurez-vous de marquer la question comme [devoirs]. – pkaeding

+0

en fait ce n'est pas un devoir ... c'était un tutoriel parce que j'essaie d'apprendre le C++ pour aider certaines personnes sur un jeu appelé OpenLieroX, c'est un jeu assez amusant mais pas assez pour les développeurs, et comme je le faisais Certains codage dernier dans QBasic et je me suis amusé avec elle, je voulais apprendre quelque chose qui n'était pas obsolète. – xCra2yx

Répondre

3

Laissez-moi faire allusion à un problème. Jetons un regard sur les deux chèques que vous avez pour l'impression du message « trop élevé » et « trop bas »:

if(iUserguess > iGumballs) 
    if(iUserguess > iGumballs) 

quoi que ce soit d'avis mal quand je les mets ensemble?

+0

Ok, merci. Que les problèmes fixés maintenant :) – xCra2yx

1

Pourquoi ne vous postez pas les parties du code que vous rencontrez des problèmes avec , au lieu de simplement nous donner une décharge de tout et de nous demander de le comprendre?

Basé uniquement sur votre description du problème, je vous recommande:

  1. Ajouter la validation d'entrée (qui résoudra votre deuxième question)
  2. Présentons sur le code qui vérifie si le nombre est trop haut/bas
  3. Si vous ne pouvez toujours pas le comprendre, postez la section du code qui vous pose problème et expliquez ce que vous avez essayé et ce qui s'est mal passé.
+0

Eh bien, je ne peux pas vraiment poster la partie du code pour le second problème parce que je ne savais pas ce qui causait ce problème. Comme vous pouvez probablement le dire par le type de programme, je suis assez nouveau dans C++, alors pouvez-vous expliquer comment fonctionne la validation des entrées? – xCra2yx

Questions connexes