黑马程序员技术交流社区

标题: 双十二发福利了 [打印本页]

作者: 张晓林老师    时间: 2016-12-12 11:32
标题: 双十二发福利了
生成一个1-100的随机数                          
2:用户键盘录入一个数字 ,与该随机数进行比较               
3:如果猜数正确,退出程序                          
4:如果猜大了,打印"猜大了,请重新猜",用户继续猜            
5:如果猜小了,打印"猜小了,请重新猜",用户继续猜            
6:一共可以猜6次                              
7:当用户6次都没猜中时,程序结束 ,将用户所猜过的所有结果打印到控制台


作者: 相约在北广上    时间: 2016-12-12 11:49
public class CaiShu {

    public static void main(String[] args) {
        Random r = new Random();
        Scanner sc = new Scanner(System.in);
        int num = r.nextInt(100) + 1;
        System.out.println(num+"**");
        ArrayList<Integer> list = new ArrayList<Integer>();
        for (int i = 1; i <= 6; i++) {
            System.out.println("请输入你猜的数(1-100):");
            System.out.println("你还有"+(7-i)+"次机会:");
            int nextInt = sc.nextInt();
            list.add(nextInt);
            if(nextInt==num){
                System.out.println("猜数正确");
                System.out.print("你猜过数为:");
                for (Integer integer : list) {
                    System.out.print(integer+" ");
                }
                return;
            }else if(nextInt>num){
                if(i==6){
                    System.out.println("猜大了,猜数超过6次!GameOver!~");
                    System.out.print("你猜过数为:");
                    for (Integer integer : list) {
                        System.out.print(integer+" ");
                    }
                    return;  
                }else{
                    System.out.println("猜大了,请重新猜");
                }
               
            }else if(nextInt<num){
                if(i==6){
                    System.out.println("猜小了,猜数超过6次!GameOver!~");
                    System.out.print("你猜过数为:");
                    for (Integer integer : list) {
                        System.out.print(integer+" ");
                    }
                    return;  
                }else{
                    System.out.println("猜小了,请重新猜");
                }
            }
        }
        
    }
}
作者: 星陨    时间: 2016-12-13 16:47
// 设置随机数
                Random r = new Random();
                int num = r.nextInt(100) + 1;
                // 创建键盘录入对象
                Scanner sc = new Scanner(System.in);
                // 定义数组存放所猜数
                List<Integer> list = new ArrayList<>();
                // 定义计数器,6次退出
                int count = 0;
                // 设置循环
                while (true) {
                        System.out.println("请输入您所猜的数:");
                        // 输入所猜数
                        int in = sc.nextInt();
                        // 进行比较
                        if (num == in) {
                                list.add(in);
                                System.out.println("您猜对了!");
                                System.exit(0);
                        } else if (num > in) {
                                list.add(in);
                                System.out.println("猜小了,请重新猜");
                                count++;
                        } else if (num < in) {
                                list.add(in);
                                System.out.println("猜大了,请重新猜");
                                count++;
                        }
                        // 退出并打印
                        if (count == 6) {
                                for (Integer i : list) {
                                        System.out.println(i);
                                }
                                System.exit(0);
                        }

                }
作者: a469517790    时间: 2017-1-17 23:18
2017年1月17日23:33:06
作者: ponyWISE    时间: 2017-2-3 19:13
[Java] 纯文本查看 复制代码

import java.util.ArrayList;
import java.util.Random;
import java.util.Scanner;


public class GuessNum {

        private int tarNum;
        private int lowRndLimit=1;
        private int highRndLimit=100;
        private int tryTimesLimit;
        private int tryTimes=0;
        private ArrayList<Integer> list = new ArrayList();
        
        public GuessNum(int tryTimesLimit){
                this.initTarNum();
                this.tryTimesLimit=tryTimesLimit;
        }
        
        //创建随机数
        public void initTarNum(){
                Random r = new Random();
                tarNum = r.nextInt(highRndLimit-lowRndLimit+1)+lowRndLimit;
        }
        
        //判断猜测结果
        public void guess(int scrNum){
                list.add(scrNum);
                tryTimes++;
                if(scrNum==tarNum){
                        System.out.println("猜中");
                        System.exit(0);
                }else if(scrNum>tarNum){
                        System.out.println("猜大了,请重新猜");
                }else{
                        System.out.println("猜小了,请重新猜");
                }
        }
        
        //判断是否还有猜测机会
        public boolean hasChance(){
                return tryTimesLimit!=tryTimes;
        }
        
        //打印猜测过程
        public void printGuessHistory() {
        for (Integer integer : list) {
            System.out.print(integer+" ");
        }
        }
        
        public static void main(String[] args) {
                GuessNum gn = new GuessNum(6);
                int scrNum;
                Scanner sc = new Scanner(System.in);
                while (gn.hasChance()){
                        System.out.println("输入猜测数字:");
                        scrNum = sc.nextInt();
                        gn.guess(scrNum);
                }
                gn.printGuessHistory();
        }
}

作者: wangzhao    时间: 2017-3-12 09:53
[Java] 纯文本查看 复制代码
package com.itheima;

import java.util.Random;
import java.util.Scanner;

public class Test1 {
        /*
         * 生成一个1-100的随机数                          
                2:用户键盘录入一个数字 ,与该随机数进行比较               
                3:如果猜数正确,退出程序                          
                4:如果猜大了,打印"猜大了,请重新猜",用户继续猜            
                5:如果猜小了,打印"猜小了,请重新猜",用户继续猜            
                6:一共可以猜6次                              
                7:当用户6次都没猜中时,程序结束 ,将用户所猜过的所有结果打印到控制台
         */
        public static void main(String[] args) {
                Random ra=new Random();
                int num=(ra.nextInt(100)+1);
                System.out.println(num);
                Scanner sc=new Scanner(System.in);
                int count=6;
                System.out.println("请输入数字:");
                int[] allNum=new int[6];
                while(true){
                        System.out.println("您还有"+count+"次机会");
                        int x=sc.nextInt();
                        allNum[(6-count)]=x;
                        count--;
                        if(x>num){
                                System.out.println("猜大了,请重新猜");
                        }else if(x<num){
                                System.out.println("猜小了,请重新猜");
                        }else{
                                System.out.println("Bingo,Game Over");
                                break;
                        }
                        if(count==0)
                                break;
                }
                System.out.print("猜过的数为:");
                for(int i=0;i<allNum.length;i++)
                System.out.print(allNum+"\t");
        }

}

作者: 迷途的羊    时间: 2017-3-13 23:12
好多大神啊
作者: maweiqiangmwq    时间: 2017-5-3 00:45
public class Game {

    public static void main(String[] args) {
        Random r = new Random();
        Scanner sc = new Scanner(System.in);
        int num = r.nextInt(100) + 1;
        System.out.println(num+"**");
        ArrayList<Integer> list = new ArrayList<Integer>();
        for (int i = 1; i <= 6; i++) {
            System.out.println("请输入你猜的数(1-100):");
            System.out.println("你还有"+(7-i)+"次机会:");
            int nextInt = sc.nextInt();
            list.add(nextInt);
            if(nextInt==num){
                System.out.println("猜数正确");
                System.out.print("你猜过数为:");
                for (Integer integer : list) {
                    System.out.print(integer+" ");
                }
                return;
            }else if(nextInt>num){
                if(i==6){
                    System.out.println("猜大了,猜数超过6次!GameOver!~");
                    System.out.print("你猜过数为:");
                    for (Integer integer : list) {
                        System.out.print(integer+" ");
                    }
                    return;  
                }else{
                    System.out.println("猜大了,请重新猜");
                }
               
            }else if(nextInt<num){
                if(i==6){
                    System.out.println("猜小了,猜数超过6次!GameOver!~");
                    System.out.print("你猜过数为:");
                    for (Integer integer : list) {
                        System.out.print(integer+" ");
                    }
                    return;  
                }else{
                    System.out.println("猜小了,请重新猜");
                }
            }
        }
        
    }
}




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2