黑马程序员技术交流社区
标题:
JAVA基础第六天,小的猜字游戏。
[打印本页]
作者:
18322484544
时间:
2015-11-3 22:00
标题:
JAVA基础第六天,小的猜字游戏。
/*猜数字小游戏(数据在1-100之间)*/
import java.util.Scanner;
class Test_Game {
public static void main(String[] args) {
RanDom();
Game();
}
public static void Game() {
Scanner s=new Scanner(System.in);
System.out.println("彩字游戏");
System.out.println("请输入一个1到100之间的数字:");
while(true) {
int a = s.nextInt();
if(a>100&&a<0) {
System.out.println("输入值非法");
}else if(a>RanDom()) {
System.out.println("输入的值大了");
}else if(a<RanDom()) {
System.out.println("输入的值小了");
}else {
System.out.println("两数相等");
break;
}
}
}
public static int RanDom() {
int i=(int)(Math.random()*100);
return i;
}
}
作者:
白丑
时间:
2015-11-4 09:40
还以为你前面调用random是干嘛呢..原来是后面用的
作者:
yuhongzhen
时间:
2015-11-4 09:56
如果加入异常判断,更完美些。
作者:
ppaapc
时间:
2015-11-4 19:05
还i不错啊
作者:
1379号监听员
时间:
2015-11-4 21:44
import java.util.Scanner;
class GuessNum {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int guess = ((int)(Math.random()*100)-1);
System.out.println("请输入1~100的随机整数");
int count = 0;
while (true) {
int num = sc.nextInt(); //必须写在for循环内
count++;
if(num < 0 || num > 100)
{
System.out.println("哥们你逗我玩呢?");
System.out.println("请输入1~100的随机整数");
}
else if (num > guess) {
System.out.println("猜大了哟");
}else if (num < guess) {
System.out.println("猜小了哟");
}else {
System.out.println("猜对了哟");
if (count <= 3) {
System.out.println("您的智商屌爆了");
} else if (count >3 || count < 5) {
System.out.println("您的的智商需要充值");
}else{
System.out.println("您的的智商已经下线");
}
break; //如果中了跳出循环
}
}
}
}
复制代码
作者:
784080960
时间:
2015-11-4 21:44
挺好的,支持 支持支持
作者:
damofeixue
时间:
2015-11-5 01:14
这个我也做过,蛮有意思的
作者:
young_ants
时间:
2015-11-5 13:29
看起来不错,一会跑一下!
作者:
jlq
时间:
2015-11-5 13:45
看看那 学习一下
作者:
momoxixi
时间:
2015-11-5 17:41
import java.util.Scanner;
/**
* Created by mo on 15/11/1.
*
* 需求:猜数字小游戏,猜数范围为1-100,猜数次数上限为5次
* 若猜错,则下次猜数的范围根据本次输入的数据缩小
* 输入超过100或者小于1的,要提示输入错误,同样计入猜数次数
* 最后输出正确答案
*/
public class GuessNumber {
public static void main(String[] args) {
int number = (int)(Math.random()*100)+1; //生成1-100的随机数
int key0 = 1; //定义猜数范围下限
int key1 = 100; //定义猜数范围上限
int count = 0; //定义猜数次数
while (true){
//while循环,因为前四次和第五次的提示不一样,所以内部先判断是前四次还是第五次猜数
if (count < 4){ //若要更改猜数次数上限,将此处改为猜数次数-1
Scanner sc = new Scanner(System.in);
System.out.println("请输入您猜的数字,范围为"+key0+"-"+key1);
int key = sc.nextInt();
count++;
if (key == number){
System.out.println("猜对了!");
break;
}else if(key < 1 || key > 100){
System.out.println("您输入的数据有误,请重试");
}else if(key < number){
if (key > key0){ //根据用户输入的数据判断下限是否需要改变
key0 = key;
}
System.out.println("您猜错了,请继续");
}else {
if (key < key1){ //根据用户输入的数据判断上限是否需要改变
key1 = key;
}
System.out.println("您猜错了,请继续");
}
}else { //第五次猜数
Scanner sc = new Scanner(System.in);
System.out.println("请输入您猜的数字,范围为"+key0+"-"+key1);
int key = sc.nextInt();
if (key == number){
System.out.println("猜对了!");
break;
}else if(key < 1 || key > 100){
System.out.println("您输入的数据有误,超过规定次数,游戏结束");
break;
}else if(key < number){
System.out.println("您猜错了,超过规定次数,游戏结束");
break;
}else {
System.out.println("您猜错了,超过规定次数,游戏结束");
break;
}
}
}
System.out.println("正确答案为:"+number);
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2