7-8 sdut-JAVA-Convert 12 To 24 Hour Clock
分数 12
全屏浏览
切换布局
作者 马新娟
单位 山东理工大学
Write a program that accepts a time on a 12-hour clock (using 3 integer variables, the first denoting hours, the second denoting minutes and the third is a designator(1 for AM, 2 for PM)). Your program should convert this input to its equivalent time as it would appear on a 24-hour clock and display the result. In your output it is only necessary to display hours and minutes.
If your hours input is less than 0 or more than 12,display the message “Value for hours must be in the range 1 to 12"; If your minutes input is less than 0 or more than 59,display the message "Value for minutes must be in the range 0 to 59"; your designator input is less than 1 or more than 2,display the message "Designator must be 1 (for AM) or 2 (for PM)".
Input Specification:
accepts a time on a 12-hour clock (using 3 integer variables, the first denoting hours, the second denoting minutes and the third is a designator).
Output Specification:
Display a 24-hour clock.
Sample Input:
12 60
Sample Output:
Value for minutes must be in the range 0 to 59
Sample Input:
12 0 1
Sample Output:
00:00
Sample Input:
12 0 2
Sample Output:
12:00
Sample Input:
8 20 1
Sample Output:
08:20
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
栈限制
8192 KB
import java.util.*; public class Main { public static void main(String [] args) { int hours, minutes, designator; String r = ""; String msg1 = "Value for hours must be in the range 1 to 12"; String msg2 = "Value for minutes must be in the range 0 to 59"; String msg3 = "Designator must be 1 (for AM) or 2 (for PM)"; Scanner in =new Scanner(System.in); hours = Integer.parseInt(in.nextLine()); if (hours < 1 || hours > 12) r = msg1; else { minutes = Integer.parseInt(in.nextLine()); if (minutes < 0 || minutes > 59) r = msg2; else { designator = Integer.parseInt(in.nextLine()); if (designator < 1 || designator > 2) r = msg3; else { if (hours == 12 && minutes == 0 && designator == 1) hours = 0; else if (hours == 12 && designator == 1) hours -= 12; else if (hours == 12 && designator == 2) hours = 12; else if (designator == 2) hours += 12; if (hours < 10) r += "0" + hours; else r += hours; if (minutes < 10) r += ":0" + minutes; else r += ":" + minutes; } } } System.out.println(r); } }