1到100产生随机数 并猜产生的随机数 如果猜对直接输出 猜不对继续猜问题

菜鸟零零七 2013-12-12 10:55:29
希望大神们给指点一下 谢谢!
...全文
3645 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
清晨宸 2013-12-13
  • 打赏
  • 举报
回复
我刚写的:

import java.io.InputStreamReader;
import java.io.BufferedReader;
import java.io.IOException;
public class easy09 {
	public static void main(String [] args)
	{
		System.out.println("猜一个从0到99999的数字!");
		int secret_num=(int)(Math.random()*(999999));
		int guess_num=-1;
		int count=0;
		int min=0;
		int max=999999;
		while(guess_num!=secret_num)
		{
			guess_num=getNumber();
			if(guess_num<min||guess_num>max)
			{
				System.out.println("笨蛋!范围"+min+"~"+max);
				continue;
			}
			count++;
			if(guess_num>secret_num)
			{
				max=guess_num;
				System.out.println("大了   "+min+"~"+max);
			}
			else if(guess_num<secret_num)
			{
				min=guess_num;
				System.out.println("小了   "+min+"~"+max);
			}else
			{
				System.out.println(guess_num+"猜对了,猜了"+count+"次");
				break;
			}
		}
	}
	private static int getNumber()
	{
		System.out.print("请输入一个数字:");
		try
		{
			InputStreamReader reader=new InputStreamReader(System.in);
			String str=new BufferedReader(reader).readLine();
			int num=Integer.parseInt(str.trim());
			return num;
		}
		catch(Exception e)
		{
			return getNumber();
		}
	}
}
sliwey 2013-12-13
  • 打赏
  • 举报
回复
引用 5 楼 zyc13701469860 的回复:
[quote=引用 4 楼 u011559804 的回复:]

import java.util.Scanner;


public class Guess {

	public static void main(String[] args) {
		int random = 0;
		int guess = -1;
		Scanner sc = new Scanner(System.in);
		
		while(random != guess) {
			System.out.println("系统正在产生1-100的随机数。。。");
			random = (int)(Math.random()*100 + 1);
			System.out.println("随机数已生成!");
			System.out.println("请输入你猜的数字。。。");
			guess = sc.nextInt();
			System.out.println("很遗憾,你猜错了!随机数为i:" + random + ",你猜的是:" + guess);
		}
		System.out.println("恭喜你!猜对了!");
	}
	
}

理论上只需要产生一次随机数,7次之内猜出。不然玩的人绝对要崩溃...[/quote] 这样才好玩。。。
菜鸟零零七 2013-12-12
  • 打赏
  • 举报
回复
嗯 是的 给指点一下 谢谢喽
teemai 2013-12-12
  • 打赏
  • 举报
回复
继续猜随机数要重新生成么?
haozhongjun 2013-12-12
  • 打赏
  • 举报
回复
(int)(Math.random()*100)+1 1到100的随机数其他的不难吧!
Mourinho 2013-12-12
  • 打赏
  • 举报
回复
引用 4 楼 u011559804 的回复:

import java.util.Scanner;


public class Guess {

	public static void main(String[] args) {
		int random = 0;
		int guess = -1;
		Scanner sc = new Scanner(System.in);
		
		while(random != guess) {
			System.out.println("系统正在产生1-100的随机数。。。");
			random = (int)(Math.random()*100 + 1);
			System.out.println("随机数已生成!");
			System.out.println("请输入你猜的数字。。。");
			guess = sc.nextInt();
			System.out.println("很遗憾,你猜错了!随机数为i:" + random + ",你猜的是:" + guess);
		}
		System.out.println("恭喜你!猜对了!");
	}
	
}

理论上只需要产生一次随机数,7次之内猜出。不然玩的人绝对要崩溃...
sliwey 2013-12-12
  • 打赏
  • 举报
回复

import java.util.Scanner;


public class Guess {

	public static void main(String[] args) {
		int random = 0;
		int guess = -1;
		Scanner sc = new Scanner(System.in);
		
		while(random != guess) {
			System.out.println("系统正在产生1-100的随机数。。。");
			random = (int)(Math.random()*100 + 1);
			System.out.println("随机数已生成!");
			System.out.println("请输入你猜的数字。。。");
			guess = sc.nextInt();
			System.out.println("很遗憾,你猜错了!随机数为i:" + random + ",你猜的是:" + guess);
		}
		System.out.println("恭喜你!猜对了!");
	}
	
}

牟云飞 2013-12-12
  • 打赏
  • 举报
回复
while(1==1){ //产生一个随机数 int a=随机数; //输入的数 int b=输入的数; if(a==b){ //输出结果 //终止循环 break; } system.out.println("继续猜"); }

50,526

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧