本文目录一览:
- 1、PHP Web程序题,求大神
- 2、编写一个猜数字游戏。用户给出一个1到100之间的整数,程序通过提问来猜测用户所想的数是什么
- 3、实现一个猜数字的小游戏。游戏规则:① 游戏软件随机产生4个数字(0-9
PHP Web程序题,求大神
//真正实现要用ajax做无刷新。代码原理如下:
$c = $_POST['SZ'];//接收用户输入的数字
if($c){//提交数字的验证
$a = $_POST['rand'];//接收原随机数
$b = $_POST['last'];//接收剩余次数
if($b==0){//没次数,直接弹出提示
echo "没有机会了";exit;
}
$b--;//有次数,次数减1
if($c$a){
echo "猜大了,你还有".$b."次机会";
}else if($c$a){
echo "猜小了,你还有".$b."次机会";
}else if($c==$a){
echo "猜对了!";
}
exit;
}else{//首次加载初始化,生成随机数
$a = mt_rand(1,10);
$b = 5;
}
//真正实现需要无刷新返回变量值,并用js更新到html产生交互
编写一个猜数字游戏。用户给出一个1到100之间的整数,程序通过提问来猜测用户所想的数是什么
就1个折半查找嘛。。。。
简单写了个,貌似不太合题意,但7步以内能猜到任何1-100的数字,因为我要求回答电脑的答案是3个,1,是,2,等,0,不是。可能不和要求,你看了后具体提下问题该怎么问,反正我觉得这种要求3种答案的像是作弊,呵呵。因为涉及是否等于边界的问题,50、25(75)、38(63、87)……我觉得还非得加入“等于”这个答案才解得出来。另外,我每行基本上都有tab键让格式美观的……到了网页上貌似tab这个纠结的键的原因让代码。。。你编译之前Cril+A全选然Alt+F8整理格式吧。C++源码:
#includeiostream
using namespace std;
int main()
{
int Num[100];
int i,n = 0,mid,high = 99,low = 0,flag1 = 0,flag2; //flag1代表找没找到,flag2表示电脑问题答案的与否
int goal;
for(i = 0;i 100;i ++)
{
Num[i] = i + 1;
}
cout"当电脑提问后请输入1代表大于,2代表等于,0代表小于"endl;
while(!flag1 high low n 7)
{
goal = (Num[high] + Num[low]) / 2;
mid = (high + low) / 2;
cout"你要找的数大于"goal"么?"endl;
n ++;
cinflag2;
if(n == 7 goal == 99 flag2 == 1) //对100特殊处理,没有这个if语句,当你想着100时
{ //你会输入7个1,然后程序告诉你输入错误或者在耍他。
flag1 = 2; //对应的如果连续输入7个0的话你想着的数字绝对是
break; //小于1的,程序可以判断,这个if只是针对100这个特殊数字
} //可能是因为你要找1-100,而建立数组是0-99的原因吧
if(flag2 == 1) //写程序测试的时候就要注意边界问题。
{
low = mid;
}
else if(flag2 == 0)
{
high = mid;
}
else
{
flag1 = 1;
break;
}
}
if(flag1 == 1)
{
cout"你的数字是"goalendl;
}
else if(flag1 == 2) //对100特殊处理的结果输出
{
cout"你的数字是"100endl;
}
else
{
cout"你输入错误或者你在耍我"endl;
}
return 0;
}
实现一个猜数字的小游戏。游戏规则:① 游戏软件随机产生4个数字(0-9
1.int num = (int)(Math.random()*100+1);//随机得出一个1~100的数
2.用一个变量去接收玩家输入的数,例如int i;
3.用if语句,当玩家输入的数与随机数相等时(i==num),则输出语句(恭喜你猜对了).
4.用else写出猜错是的语句.
大致思路就是这样.建议你自己去写,只有自己写过才会懂.如有不懂的,本人也在学习中,大家可以相互讨论讨论.另外你可以把数字设置成1~10;这样的话比较容易出现猜对的情况,方便你验证程序是否正确,然后再改成1~100;
最后在说下Math.random(),这个方法得到是一个0~1之间的随机小数(不包括1但包括0),所以(0~1)*100=0~100(但是不包括100),然后+1就得出1~100了;因为Math.random()是个小数所以用int强转.