首页 > 编程知识 正文

php实现简单的猜数字游戏(编写一个猜数字的小游戏)

时间:2023-12-03 11:56:30 阅读:311826 作者:PFAK

本文目录一览:

  • 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强转.

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。