猜生日

  • Set1 二进制为:xxxx1
1 3 5 7
9 11 13 15
17 19 21 23
25 27 29 30
  • Set2 二进制为:xxx1x
2 3 6 7
10 11 14 15
18 19 22 23
26 27 30 31
  • Set3 二进制为:xx1xx
4 5 6 7
12 13 14 15
20 21 22 23
28 29 30 31
  • Set4 二进制为:x1xxx
8 9 10 11
12 13 14 15
24 25 26 27
28 29 30 31
  • Set5 二进制为:1xxxx
16 17 18 19
20 21 22 23
24 25 26 27
28 29 30 31

无GUI实现


import javax.swing.JOptionPane;
import java.util.*;
class Main {
  
  public static void main(String []args) {
    String set1 = 
      " 1   3   5   7\n" +
      " 9  11  13  15\n" +
      "17  19  21  23\n" +
      "25  27  29  31";
    
    String set2 = 
      " 2   3   6   7\n" +
      "10  11  14  15\n" +
      "18  19  22  23\n" +
      "26  27  30  31";
    
    String set3 = 
      " 4   5   6   7\n" +
      "12  13  14  15\n" +
      "20  21  22  23\n" +
      "28  29  30  31";
    
    String set4 = 
      " 8   9  10  11\n" +
      "12  13  14  15\n" +
      "24  25  26  27\n" +
      "28  29  30  31";

    String set5 = 
      "16  17  18  19\n" +
      "20  21  22  23\n" +
      "24  25  26  27\n" +
      "28  29  30  31";

    int day = 0;
    
    //Create a Scanner
    Scanner input = new Scanner(System.in);

    //Prompt the user to answer questions
    System.out.println("Is your birthday in Set1?");
    System.out.println(set1);
    System.out.println("Enter 0 for No and 1 for Yes:");
    int answer = input.nextInt();

    if(answer == 1)
      day += 1;
    
    //Prompt the user to answer questions
    System.out.println("Is your birthday in Set2?");
    System.out.println(set2);
    System.out.println("Enter 0 for No and 1 for Yes:");
    answer = input.nextInt();

    if(answer == 1)
      day += 2;

    //Prompt the user to answer questions
    System.out.println("Is your birthday in Set3?");
    System.out.println(set3);
    System.out.println("Enter 0 for No and 1 for Yes:");
    answer = input.nextInt();

    if(answer == 1)
      day += 4;

    //Prompt the user to answer questions
    System.out.println("Is your birthday in Set4?");
    System.out.println(set4);
    System.out.println("Enter 0 for No and 1 for Yes:");
    answer = input.nextInt();

    if(answer == 1)
      day += 8;

    //Prompt the user to answer questions
    System.out.println("Is your birthday in Set5?");
    System.out.println(set5);
    System.out.println("Enter 0 for No and 1 for Yes:");
    answer = input.nextInt();

    if(answer == 1)
      day += 16;

    System.out.println("Your birthday is " + day + "!");

    
	}
}

GUI实现


import javax.swing.JOptionPane;
import java.util.*;
class Main {
  
  public static void main(String []args) {
    String set1 = 
      " 1   3   5   7\n" +
      " 9  11  13  15\n" +
      "17  19  21  23\n" +
      "25  27  29  31";
    
    String set2 = 
      " 2   3   6   7\n" +
      "10  11  14  15\n" +
      "18  19  22  23\n" +
      "26  27  30  31";
    
    String set3 = 
      " 4   5   6   7\n" +
      "12  13  14  15\n" +
      "20  21  22  23\n" +
      "28  29  30  31";
    
    String set4 = 
      " 8   9  10  11\n" +
      "12  13  14  15\n" +
      "24  25  26  27\n" +
      "28  29  30  31";

    String set5 = 
      "16  17  18  19\n" +
      "20  21  22  23\n" +
      "24  25  26  27\n" +
      "28  29  30  31";

    int day = 0;
  
    //Prompt the user to answer questions
    int answer = JOptionPane.showConfirmDialog(null, "Is your birthday in these numbers?\n" + set1);
    if(answer == JOptionPane.YES_OPTION){
      day += 1;
    }
    
    answer = JOptionPane.showConfirmDialog(null, "Is your birthday in these numbers?\n" + set2);
    if(answer == JOptionPane.YES_OPTION){
      day += 2;
    }

    answer = JOptionPane.showConfirmDialog(null, "Is your birthday in these numbers?\n" + set3);
    if(answer == JOptionPane.YES_OPTION){
      day += 4;
    }

    answer = JOptionPane.showConfirmDialog(null, "Is your birthday in these numbers?\n" + set4);
    if(answer == JOptionPane.YES_OPTION){
      day += 8;
    }

    answer = JOptionPane.showConfirmDialog(null, "Is your birthday in these numbers?\n" + set5);
    if(answer == JOptionPane.YES_OPTION){
      day += 16;
    }

    JOptionPane.showMessageDialog(null, "Your birthday is " + day + "!");
	}
}

posted @ 2022-05-09 16:37  Scenery_Shelley  阅读(205)  评论(0)    收藏  举报