package day03;
import java.util.Random;
import javax.swing.JOptionPane;
/*1.當輸入的數字與隨機產生的數字相同。提示恭喜你中500萬日元
2.當輸入的數字小於 提示輸入小
3.當輸入的數字大了 提示輸入大了
輸入5次沒有猜中。對不起遊戲結束
5.如果字母就提示輸入字母 如果數字就提示輸入數字
8.如果大寫的字母 提示大寫字母
*/
public class GuessNumDemo {
// 入口方法
public static void main(String[] args) {
String str = "123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
// 隨機產生字符
Random random = new Random();
String inputChar = "";
int index = random.nextInt(str.length());
char guessChar = str.charAt(index);
//JOptionPane.showMessageDialog(null, guessChar);//用於測試,讓所猜的字符顯示出來,測試程序的正誤
/*
* if((guessChar>='1')&&(guessChar<='9')){
* inputChar=JOptionPane.showInputDialog("請輸入你猜的數字"); }else
* if(((guessChar
* >='a')&&(guessChar<='z'))||((guessChar>='A')&&(guessChar<='Z'))){
* inputChar=JOptionPane.showInputDialog("請輸入你猜的字母"); }
*/
for (int i = 0; i < 5; i++) {
if (guessChar >= 49 && guessChar <= 57) {
inputChar = JOptionPane.showInputDialog("請輸入你猜的數字");
if (inputChar.charAt(0) >= 49 && inputChar.charAt(0) <= 57) {
if (inputChar.equals(guessChar + "")) {
JOptionPane.showMessageDialog(null, "恭喜你中了500萬!");
break;
} else {
if (inputChar.charAt(0) > guessChar) {
JOptionPane.showMessageDialog(null, "大了!");
} else if (inputChar.charAt(0) < guessChar) {
JOptionPane.showMessageDialog(null, "小了!");
}
}
} else {
JOptionPane.showMessageDialog(null, "輸入錯誤!");
}
} else if ((guessChar >= 97 && guessChar <= 122)) {
inputChar = JOptionPane.showInputDialog("請輸入你猜的小寫字母");
if (inputChar.charAt(0) >= 97 && inputChar.charAt(0) <= 122) {
if (inputChar.equals(guessChar + "")) {
JOptionPane.showMessageDialog(null, "恭喜你中了500萬!");
break;
} else {
if (inputChar.charAt(0) > guessChar) {
JOptionPane.showMessageDialog(null, "大了!");
} else if (inputChar.charAt(0) < guessChar) {
JOptionPane.showMessageDialog(null, "小了!");
}
}
} else {
JOptionPane.showMessageDialog(null, "輸入錯誤!");
}
} else if ((guessChar >= 65 && guessChar <= 90)) {
inputChar = JOptionPane.showInputDialog("請輸入你猜的大寫字母");
if (inputChar.charAt(0) >= 65 && inputChar.charAt(0) <= 90) {
if (inputChar.equals(guessChar + "")) {
JOptionPane.showMessageDialog(null, "恭喜你中了500萬!");
break;
} else {
if (inputChar.charAt(0) > guessChar) {
JOptionPane.showMessageDialog(null, "大了!");
} else if (inputChar.charAt(0) < guessChar) {
JOptionPane.showMessageDialog(null, "小了!");
}
}
} else {
JOptionPane.showMessageDialog(null, "輸入錯誤!");
}
}
}
}
}