【问题标题】:How many gumballs in the jar. 2 errors罐子里有多少口香糖球。 2 个错误
【发布时间】:2015-09-02 10:16:22
【问题描述】:

尝试编码猜测口香糖罐中有多少口香糖球,有点意思。我不断遇到两个问题:

  1. 它应该说猜测是高还是低,但只有当我输入一个超过 1000 的数字时才会发生这种情况,它会说:

输入你的猜测:1001
太高了!

太低了!

输入你的猜测:

  1. 如果你输入一个字母或短语,它会乱说:

输入您的猜测:
太高了!

太低了!

但它一直说每分钟大约几百次甚至一千次 -.-

#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;
}

【问题讨论】:

  • 在询问有关来源的问题时,您应该将其保留在此处,以便人们可以看到而不是跳过它。尤其是当无法保证您的外部链接将在 3 年内正常运行时。为我的格式道歉
  • 乍一看,这可能是一个家庭作业问题。虽然在本网站上寻求家庭作业方面的帮助并没有错,但请务必将问题标记为 [homework]。
  • 实际上这不是家庭作业...这是一个教程,因为我正在尝试学习 C++ 来帮助一些人开发一款名为 OpenLieroX 的游戏,这是一款非常有趣的游戏,但缺乏开发人员,并且由于我以前在 QBasic 中进行过一些编码并且我玩得很开心,所以我想学习一些不过时的东西。
  • 关于它在非整数输入上的混乱,请阅读parashift.com/c++-faq-lite/input-output.html,第 15.2 节到第 15.4 节。

标签: c++


【解决方案1】:

让我提示一个问题。让我们看一下打印“太高”和“太低”消息的两项检查:

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

当我把它们放在一起时发现有什么问题吗?

【讨论】:

    【解决方案2】:

    您为什么不发布您遇到问题的代码部分,而不仅仅是向我们提供所有内容的转储并要求我们解决?

    仅根据您对问题的描述,我建议您:

    1. 添加输入验证(这将解决您的第二个问题)
    2. 再次查看检查数字是否过高/过低的代码
    3. 如果您仍然无法弄清楚,请发布给您带来麻烦的代码部分,并说明您尝试了什么以及出了什么问题。

    【讨论】:

    • 嗯,我不能真正发布第二个问题的代码部分,因为我不知道是什么导致了这个问题。您可能可以从程序类型看出我对 C++ 很陌生,所以您能解释一下输入验证的工作原理吗?
    猜你喜欢
    • 1970-01-01
    • 2013-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-14
    • 1970-01-01
    • 2023-03-20
    相关资源
    最近更新 更多