老师给了份功课,关于Mastermind.
整个java要写的步骤都想好了.但有几个问题想问一下.1. 关于array
本人想用两个array分别放着电脑随机产生的4个数字,用户输入的4个数字.
想问一下,是不是这样写.
int[] arr1 = new int[4];
int userguess;
int digit1,digit2,digit3,digit4;
userguess=integer.parseInt((JOptionPane.show…………………………………));
digit1 = userguess / 1000;
digit2 = userguess / % 1000 / 100;
digit3 = ………………..
digit4 = ……………….arr1[0] = digit1;
arr1[1] = digit2;
…………
…………..2. 计算输入数字和电脑随机数字是否正确.
黑色:输入的数字&位置和电脑的数字&位置相同.
这个我用for就写好了.
for (int i = 0; i < arr1.length; i++)
if ( arr1[i] == arr2[i]) // arr2是电脑随机的数字
black++; // 玩家猜的数字有多少个和计算机随机出来的数字&位置相同
else
black = 0;但是本人却不懂怎么把他转换为Method.
他要求的Method
Public static Boolean getBlack(int guess, in tans)
//用这method计算输入的数字里面有多少个数字跟电脑随机出来的数字&位置相同.Method里面的statement到底该怎么写?
写完后要怎么叫到Main那里用?3. 在java里面,玩家输入new重玩,quit离开要怎么写? 问题多了点,希望哪位能帮我一点点
整个java要写的步骤都想好了.但有几个问题想问一下.1. 关于array
本人想用两个array分别放着电脑随机产生的4个数字,用户输入的4个数字.
想问一下,是不是这样写.
int[] arr1 = new int[4];
int userguess;
int digit1,digit2,digit3,digit4;
userguess=integer.parseInt((JOptionPane.show…………………………………));
digit1 = userguess / 1000;
digit2 = userguess / % 1000 / 100;
digit3 = ………………..
digit4 = ……………….arr1[0] = digit1;
arr1[1] = digit2;
…………
…………..2. 计算输入数字和电脑随机数字是否正确.
黑色:输入的数字&位置和电脑的数字&位置相同.
这个我用for就写好了.
for (int i = 0; i < arr1.length; i++)
if ( arr1[i] == arr2[i]) // arr2是电脑随机的数字
black++; // 玩家猜的数字有多少个和计算机随机出来的数字&位置相同
else
black = 0;但是本人却不懂怎么把他转换为Method.
他要求的Method
Public static Boolean getBlack(int guess, in tans)
//用这method计算输入的数字里面有多少个数字跟电脑随机出来的数字&位置相同.Method里面的statement到底该怎么写?
写完后要怎么叫到Main那里用?3. 在java里面,玩家输入new重玩,quit离开要怎么写? 问题多了点,希望哪位能帮我一点点
解决方案 »
- java socket 处理字节问题 16进制发过去 UDP 协议 二进制转换为相应的类型 如何
- java 动态数组问题
- 最近编程遇到的JDBC很怪异问题,不奇怪我给你打钱。
- 哥几个,我儿子选美,帮忙投一票呵! (没分了,进来的只有感谢!)
- 编码问题,大家讨论一下
- request.setAttribute()问题
- 搜寻关于JAVA的电子书籍的下载网站,关于电脑技术的都可以,谢谢各位!
- 做了个东西,像javadoc那样本地浏览csdn帖子,绝对华丽!大家一起完善源码吧!
- 关于xml解析的问题,再线等待
- String[] args 的参数是怎么传的?
- java threa的怪现象
- 线程问题,一点也不懂阿!!
if(guess==tans){
return ture;
}
return false;
}
这里返回的是Boolean类型哦,怎么是整形的呢?
main(……)
{
System.out.println(“………………欢迎信息,和提示输入”);
while(1)
{
……打印什么东东在屏幕上,总之是你的规则之类吧
String str=System.in.readLine();
if(str.equle("quit")){break;
}else if(str.equle("quit")){continue;}
……判断Str是否符合你的要求…………处理你的那些算法,或者调用
………………
}
}
if(guess==tans){
return ture;
}
return false;
} 优化一下:
public static boolean getBlack(int guess, int tans){
return (guess==tans);
}是不是有点……
//comRandom
String comRandom = comRandom();
//userRandom
String temp = null;
String userRandom = userRamdon(temp);
//compareTo(user computer)
compareTo(comRandom, userRandom); } private static String comRandom(){ int tempInt = (int)(Math.random()*10000);
String temp = String.valueOf(tempInt);
System.out.println("Please input " + temp);
return temp;
} private static String userRamdon(String temp){ try {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
temp = br.readLine();
System.out.println("你输入的随机数是:" + temp);
} catch (IOException e) {
e.printStackTrace();
}
return temp;
}
private static void compareTo(String comRandom, String userRandom) {
if (comRandom.equals(userRandom)) {
System.out.println("true");
} else {
System.out.println("false");
}
}
}