如何让自己挑一个100以内的数字让计算机来猜

#include <iostream>
#include <cstdlib>
#include <ctime>

using namespace std;

int main()
{
srand(static_cast<unsigned int>(time(0)));

int secretNumber = rand() % 100 + 1;
int tries = 0;
int guess;

cout << "\tWelcome to Guess My Number\n\n";

do
{
cout << "Enter a guess: ";
cin >> guess;
++tries;

if (guess > secretNumber)
{
cout << "Too high!\n\n";
}
else if (guess < secretNumber)
{
cout << "Too low!\n\n";
}
else
{
cout << "\nThat's it! You got it in " << tries << " guesses!\n";
}

} while (guess != secretNumber);

return 0;
}
如何改写这段代码 变成我输出 100以内的数字让计算机来猜我选的数字 并且显示计算机猜的次数有多少

第1个回答  2012-05-04
你说的大概是这个吧?//Die Roller
//demonstrates generating random numbers

#include<Windows.h>
#include<iostream>
#include<cstdlib>
#include<ctime>

using namespace std;

int main()

{
int guess;
cout<<"\nenter a guess :";
cin>>guess;

srand(static_cast<unsigned int>(time(0)));//seed random number generator

unsigned int randomnumber=rand();//generat randnumber

int die=(randomnumber % guess)+1;//die is between 1 and guess

do
{
srand(static_cast<unsigned int>(time(0)));//seed random number generator

unsigned int randomnumber=rand();//generat randnumber

int die=(randomnumber % guess)+1;//die is between 1 and guess
cout<<"die="<<die;

int trise=0;
++trise;

if(guess>die)
{
die+=1;

}
else if(guess<die)
{
die-=1;

}

else
{cout<<"\nthat's it!"<<"\ndie="<<die<<"\nyou tryed :"<<trise;

break;}

}while(die!=guess);

system("pause");
return 0;
}
就是trise=有问题,一开始像无限循环一样,好几次,最后计算机还是猜得出来。
第2个回答  2014-08-06
参考答案: 从善如登,从恶如崩。本回答被提问者采纳
第3个回答  2012-03-01
想法新颖。追问

为什么很新颖 能说下看法吗 还是不可能

追答

我觉得不可能。

追问

最主要的循环那段 我只能做到 让他一直显示数字 但是他一直猜不中 比如 我打了50 计算机出60 循环就往下递减 40就叠加 但是不知道实现的方法 和语句使用

第4个回答  2012-03-02
真心的难呐追问

思路我个人应该是这样 常量 输入常量 给计算机 定义个随机的种子 然后循环 对比 大于就递减 小于就叠加 但我不知道怎么语句上面 老是错误 能麻烦看下嘛

相似回答