Provide Best Programming Tutorials

编程作业 – 选择

( 随机月份)编写一个随机产生1 和 12 之间整数的程序,并且根据数字12 显示相应的英文月份:January,February,…,December。

public class Test {
    public static void main(String[] args){
         
 
        //程序说明:随机产生1-12之间的数,并显示相应英文月份
        //产生随机数
        int y = (int)(Math.random() * 12 + 1);
        //显示相应英文月份
        switch(y){
            case 1:
                System.out.println(1 + " January");
                break;
            case 2:
                System.out.println(2 + " February");
                break;
            case 3:
                System.out.println(3 + " March");
                break;
            case 4:
                System.out.println(4 + " April");
                break;
            case 5:
                System.out.println(5 + " May");
                break;
            case 6:
                System.out.println(6 + " June");
                break;
            case 7:
                System.out.println(7 + " July");
                break;
            case 8:
                System.out.println(8 + " August");
                break;
            case 9:
                System.out.println(9 + " September");
                break;
            case 10:
                System.out.println(10 + " October");
                break;
            case 11:
                System.out.println(11 + " November");
                break;
            case 12:
                System.out.println(12 + " December");
                break;
        }
    }
}

(找到将来的日期)编写一个程序,提示用户输入代表今天日期的数字(周日为0, 周一为1, …… ,周六为6 )。同时,提示用户输入一个今天之后的天数,作为代表将来某天的数字,然后显示这天是星期几。下面是一个运行示例

Enter today’s day: 1
Enter the number of days elapsed since today: 3
Today is Monday and the future day is Thursday
public class Test {
	public static void main(String[] args){
		

		//程序说明:n天后是星期几
		//提示用户输入今天是星期几
		System.out.print("Enter today's day:");
		
		Scanner input = new Scanner(System.in);
		
		int today = input.nextInt();
		String str = "";
		
		switch(today){
		case 0:
			str = "Today is Sunday";
			break;
		case 1:
			str = "Today is Monday";
			break;
		case 2:
			str = "Today is Tuesday";
			break;
		case 3:
			str = "Today is Wednesday";
			break;
		case 4:
			str = "Today is Thursday";
			break;
		case 5:
			str = "Today is Friday";
			break;
		case 6:
			str = "Today is Saturday";
			break;
			
		}

		
		//提示用户想知道几天后的
		System.out.print("Enter the number of days elapsed since today:");
		
		int n = input.nextInt();
		
		//输出结果
		int s = (today + n) % 7;
		
		switch(s){
		case 0:
			str += " the future day is Sunday";
			break;
		case 1:
			str += " the future day is Monday";
			break;
		case 2:
			str += " the future day is Tuesday";
			break;
		case 3:
			str += " the future day is Wednesday";
			break;
		case 4:
			str += " the future day is Thursday";
			break;
		case 5:
			str += " the future day is Friday";
			break;
		case 6:
			str += " the future day is Saturday";
			break;
			
		}
		System.out.println(str);
    }
}

( 对三个整數排序)编写程序,提示用户输入三个整数。以非降序的形式显示这三个整数。

( 给出一个月的总天教)编写程序,提示用户输入月份和年份,然后显示这个月的天数。例如:如果用户输人的月份是2 而年份是 2012, 那么程序应该显示”February 2012 has 29 days”( 2012年2 月有29 天)。如果用户输人的月份为3 而年份为2015, 那么程序就应该显示”March 2015has 31 days”(2015 年3 月有31 天)。

(回文数字)编写一个程序,提示用户输人一个三位的整数,然后确定它是否回文数字。当从左到右,以及从右到左都是一样的话,这个数字称为回文数。下面是程序的一个运行示例:

Enter a three-digit integer: 121
121 is a palindrome
Enter a three-digit integer: 123
123 is not a palindrome

(游戏:猜硬币的正反面)编写程序,让用户猜一猜是硬币的正面还是反面。这个程序随机产生一个整数 0 或者 1 , 它们分别表示硬币的正面和反面。程序提示用户输人一个猜测值,然后报告这个猜测值是正确的还是错误的。

(运输成本)一个运输公司使用下面的函数,根据运输重量来计算运输成本。编写一个程序,提示用户输入包裹重量,显示运输成本。如果重量大于20,显示一条信息”the package cannot be shipped”

(计算三角形的周长)编写程序,读取三角形的三条边,如果输入值合法就计算这个三角形的周长;否则,显示这些输入值不合法。如果任意两条边的和大于第三边,那么输入值都是合法的。

(科学:某天是星期几)泽勒一致性是由 克里斯汀• 泽勒 开发的用于计算某天是星期几的算法。

这个公式是:

其中:

  • h 是一个星期中的某一天(0 为星期六;1 为星期天;2 为星期一;3 为星期二;4 为星期三;5 为星期四;6 为星期五)。
  • q 是某月的第几天。
  • j 是世纪数 | year/100 |
  • m是月份(3 为三月,4 为四月,… ,12为十二月)。一月和二月分别记为上一年的 13 和14月。
  • k 是该世纪的第几年(即 year % 100)

注意,公式中的除法执行一个整数相除。编写程序,提示用户输入年、月和该月的哪一天,然后显示它是一周中的星期几。下面是一些运行示例:

Enter year: (e.g., 2012): 2015
Enter month: 1-12: 1
Enter the day of the month: 1-31: 25
Day of the week is Sunday


Enter year: (e.g., 2012): 2012
Enter month: 1-12: 5
Enter the day of the month: 1-31: 12
Day of the week is Saturday

(使用操作符 && 、|| 和 ^ 编写一个程序,提示用户输入一个整数值,然后判定它是否能被 5 和 6 整除,是否能被 5 或 6 整除,以及是否能被 5 或 6 整除但是不能同时被它们整除。下面是这个程序的运行示例:

Enter an integer: 10
Is 10 divisible by 4 and 5? false
Is 10 divisible by 4 or 5? true
Is 10 divisible by 4 or 5 but not both? true

(游戏:挑一张牌)编写程序,模拟从一副52张的牌中选择一张牌。程序应该显示牌的大小(Ace、1、2、3、4、5、6、7、8、9、10、Jack、Queue、King)以及牌的花色Clubs、Diamonds、Hearts、Spades。下面是这个程序的运行示例:

The card you picked is Jack of Hearts

Leave a Reply

Close Menu