⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 java 猜数字.txt

📁 java猜数字简单的快速实现我的随即数字的猜想
💻 TXT
字号:
import java.io.*;
public class caishuzi
{

  public static void main(String args[])
  {
   int cnum[]=new int[4],unum[]=new int[4];
   int times,a,b,user_num=0;                     
   
   for(int i=0;i<50;i++)
             System.out.print("*");
             System.out.println("\n");
   System.out.println("猜数字游戏,计算机将生成一个无重复的四位整数(1~9)。\n");
   System.out.println("          2008-2-13    兰哲");
   for(int i=0;i<50;i++)
             System.out.print("*");
             System.out.println();
            
      do{                                                   //生成随机数
          cnum[0]=(int)(Math.random()*10+1);
          cnum[1]=(int)(Math.random()*10+1);
          cnum[2]=(int)(Math.random()*10+1);
          cnum[3]=(int)(Math.random()*10+1);
          for(int i=0;i<4;i++)
          if(cnum[i]==10)
          cnum[i]--;       //不包括10
              if(cnum[0]==cnum[1]||cnum[0]==cnum[2]||cnum[0]==cnum[3]||cnum[1]==cnum[2]||cnum[1]==cnum[3]||cnum[2]==cnum[3])       //保证获取的随机数无重复
                 continue;
              else
                 break;
          }while(true);                                        //生成随机数结束
   
    for(times=1;;times++)                              //用户动作
      {
      String s="";
   try{      
    System.out.print("请输入一个不包括零的无重复的四位整数,按回车确定:");
    BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
    s=br.readLine();
    user_num=Integer.parseInt(s);
   }catch(IOException e){}
   a=0;
   b=0;
  
  
   if(user_num==7758258)                //输入7758258显示答案
   {
    System.out.print("答案为:");
    System.out.print(cnum[0]);
    System.out.print(cnum[1]);
    System.out.print(cnum[2]);
    System.out.print(cnum[3]);
    System.out.println();
    times--;
    continue;
   }
   else if(user_num>=1000&&user_num<=9999)             
     {
         unum[0]=user_num/1000;
         unum[1]=user_num/100-unum[0]*10;
         unum[2]=user_num/10-unum[0]*100-unum[1]*10;
         unum[3]=user_num%10;    
                                     
                   if(unum[0]==unum[1]||unum[0]==unum[2]||unum[0]==unum[3]||unum[1]==unum[2]||unum[1]==unum[3]||unum[2]==unum[3])     //保证输入的数无重复
                       { 
                         System.out.println("出现重复数字,请重新输入。");
                            times--;
                           continue;
                       }                                   
         for(int aa=0;aa<4;aa++)          //aa,bb作为数组底数,用于比较正确个数   一次for语句仅用于一次数值判断获取a,b的值
         {
                                    //a为数值正确且位置正确,b为数字正确,但位置不正确
            for(int bb=0;bb<4;bb++)                    //统计猜正确的数的个数。
            {
              if(unum[aa]==cnum[bb])
              {
                    if(aa==bb)
                    a++;
                    else
                    b++;
                  break;
              }
              else
               continue;
            }
         }
       }
   else
        {
          System.out.print("输入错误,重新输入。");
          times--;
          continue;
        }
           
          System.out.println();
          System.out.print("猜对");
          System.out.print(a);
          System.out.print("个数字且位置也对");
          System.out.print(" 位置不对但数字对的有");
          System.out.print(b);
          System.out.println("个。\n");
            if(a==4)
            {
             for(int i=0;i<50;i++)
             System.out.print("*");
             System.out.println("\n");
             System.out.print("恭喜你!你猜对了!");
             System.out.print("用了");
             System.out.print(times);
             System.out.println("次。\n");
             for(int i=0;i<50;i++)
             System.out.print("*");
             System.out.println("\n");
             break;
             }
       }
 

      }
   
 
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -