判断用户输入的数字与系统随机选择的数字有多少个是值相同的,以及有多少个数字是值相同,且顺序也相同的。
package test; import java.util.*; public class test { private int[] systemData=new int[4]; private int[] userData=new int[4]; public test(){ createSystemData(); setUserData(); } public void setUserData(){ Scanner scan=new Scanner(System.in); System.out.println("请输入0-9之间的4个数字"); for(int i=0;i<userData.length;i++) userData[i]=scan.nextInt(); } public void createSystemData(){ Random generator=new Random(); while(true){ int a=generator.nextInt(); int b=generator.nextInt(); if(a==b) continue; int c=generator.nextInt(); if(a==c||b==c) continue; int d=generator.nextInt(); if(a==d||b==d||c==d) continue; systemData[0]=a; systemData[1]=b; systemData[2]=c; systemData[3]=d; break; } } public int GuessA(){ int count=0; for(int i=0;i<systemData.length;i++){ if(systemData[i]==userData[i]) count++; } return count; } public int GuessB(){ int count=0; for(int i=0;i<systemData.length;i++){ for(int j=0;j<userData.length;j++) if(systemData[i]==userData[j]) count++; } return count; } public void print(){ int a=GuessA(); int b=GuessB(); System.out.print(a+"A"+b+"B"); } public static void main(String arg[]){ test te=new test(); te.print(); } }