UseGuessDateClass

来源:互联网 发布:董先生知乎 编辑:程序博客网 时间:2024/06/08 12:19
import java.util.Scanner;

public class UseGuessDateClass {
    public static void main(String[] args) {
        int date = 0; // Date to be determined
        int answer;
        
        // Create a Scanner
        Scanner input = new Scanner(System.in);
        
        for(int i = 0; i < 5; i++) {
            System.out.println("Is your birthday in Set" + (i + 1) + "?");
            for(int j = 0; j < 4; j++) {
                for(int k = 0; k < 4; k++)
                    System.out.printf("%3s",GuessDate.getValue(i, j, k));
                System.out.println();
            }
            
            System.out.print("\nEnter 0 for No and 1 for Yes: ");
            answer = input.nextInt();
        
            if(answer == 1)
                date += GuessDate.getValue(i, 0, 0);
        }
        
        System.out.println("Your birthday is " + date);
    }

}






public class GuessDate {
    private static final int[][][] dates = {
            {
                { 1,  3,  5,  7},
                { 9, 11, 13, 15},
                {17, 19, 21, 23},
                {25, 27, 29, 31}
            },
            
            {
                { 2,  3,  6,  7},
                {10, 11, 14, 15},
                {18, 19, 22, 23},
                {26, 27, 30, 31}
            },
            
            {
                { 4,  5,  6,  7},
                {12, 13, 14, 15},
                {20, 21, 22, 23},
                {28, 29, 30, 31}
            },
            
            {
                { 8,  9, 10, 11},
                {12, 13, 14, 15},
                {24, 25, 26, 27},
                {28, 29, 30, 31}
            },
            {
                {16, 17, 18, 19},
                {20, 21, 22, 23},
                {24, 25, 26, 27},
                {28, 29, 30, 31}
            }
    };
    
    /** Prevent the user from creating objects from GuessDate */
    private GuessDate() {}
    
    /** Return a date at the specified row and column in a given set */
    public static int getValue(int i, int j, int k) {
        return dates[i][j][k];
    }
}





Is your birthday in Set1?
  1  3  5  7
  9 11 13 15
 17 19 21 23
 25 27 29 31

Enter 0 for No and 1 for Yes: 0
Is your birthday in Set2?
  2  3  6  7
 10 11 14 15
 18 19 22 23
 26 27 30 31

Enter 0 for No and 1 for Yes: 0
Is your birthday in Set3?
  4  5  6  7
 12 13 14 15
 20 21 22 23
 28 29 30 31

Enter 0 for No and 1 for Yes: 0
Is your birthday in Set4?
  8  9 10 11
 12 13 14 15
 24 25 26 27
 28 29 30 31

Enter 0 for No and 1 for Yes: 0
Is your birthday in Set5?
 16 17 18 19
 20 21 22 23
 24 25 26 27
 28 29 30 31

Enter 0 for No and 1 for Yes: 0
Your birthday is 0


0 0
原创粉丝点击