想用C++做最基础的猜数字,肯定少不了随机数;
srand(unsigned(time(NULL)));
rand() //是生成一个随机数
rand()%100+1//就是一个从一到一百的随机数
合体:
#include <iostream>
#include <cstdlib>
#include <time.h>
int main()
{ int g = 0;
while (g < 10)
{
int i;
srand(unsigned(time(NULL))); //时间种子 ,不理解去看<<c++内容>>文件夹里的图片
int a = rand() % 100 +1;//rand()伪随机数
int b = 1;
std::cout << "猜数字"<<std::endl;//输出"猜数字"
for (i = 1; i <= 10; i++)
{
std::cout << "猜猜随机数是多少 (1~100)"<<std::endl;
std::cin >> b; //输入
//判断大小
if (b==a)
{
std::cout<<" 猜对了 "<<std::endl;
i = 11;
}
else if (b < a)
{
std::cout<<"小了小了 "<<std::endl;
}
else
{
std::cout<<"大了大了"<<std::endl;
}
}
}
return 0;
}
这个是让你猜机器人想的数字,那下面的代码就是让机器人来猜你想的数字:(用二分)
#include <iostream>
#include <unistd.h>
using namespace std;
int main(){
cout << "我们来猜数字吧!你想一个1~1024的数字,我会输出一个数字请你告诉我我是猜对了还是猜大了或者猜小了\n";
int l = 0,r = 1024,m =0;
int cnt = 0;
while (l <= r){
m = (l+r)/2;
cout << m << "\n";
cout << "我猜对了吗还是大了或者小了?\n对了:y 大了:b 小了:s";
char a;
cin >> a;
if (a == 's' and m != 1024){
l = m+1;
}
else if (a == 'b' and m != 1){
r = m-1;
}
else if (a == 'y'){
cout << "哈哈我猜对了";
return 0;
}
else{
printf("脑瘫~");
break;
}
cnt += 1;
if (cnt > 10){
printf("你要想好一个数哦~\n");
printf("别老是换来换去");
break ;
}
}
}