Java에 상당히 익숙해서이 논리가 소리가 나는지 알고 싶습니다. 이 클래스의 목적은 12 시간 형식으로 사용자로부터 입력을받는 것입니다. 그런 다음 일정 시간을 입력하라는 메시지가 표시됩니다. 마지막으로 12 시간 형식으로 최종 시간 (시간이 추가됨)을 출력합니다. 나는 이것을 통해 몇 가지 테스트 시나리오를 실행했으며 모든 것이 잘 작동하는 것 같습니다. 나는 그것이 좋다고 부르기 전에 그것을보기 위해 훈련 된 눈의 추가 세트를 원한다. 당신의 도움을 주셔서 감사합니다!Java 클래스 - 시간에 n 시간, 분 및 초 추가
import javax.swing.JOptionPane;
public class M3E7 {
public static void main(String args[]) {
String start_hr = null;
String start_min = null;
String start_sec = null;
String abbr = null;
String hr = null;
String min = null;
String sec = null;
int start_hr_num = 0;
int start_min_num = 0;
int start_sec_num = 0;
int hr_num = 0;
int min_num = 0;
int sec_num = 0;
int final_hr = 0;
int final_min = 0;
int final_sec = 0;
start_hr = JOptionPane.showInputDialog("Start time - Enter the hours.");
start_min = JOptionPane.showInputDialog("Start time - Enter the minutes.");
start_sec = JOptionPane.showInputDialog("Start time - Enter the seconds.");
abbr = JOptionPane.showInputDialog("Start time - Enter either am or pm.");
hr = JOptionPane.showInputDialog("Enter the number of hours to add (less than 24).");
min = JOptionPane.showInputDialog("Enter the number of minutes to add (less than 60).");
sec = JOptionPane.showInputDialog("Enter the number of seconds to add (less than 60).");
start_hr_num = Integer.parseInt(start_hr);
start_min_num = Integer.parseInt(start_min);
start_sec_num = Integer.parseInt(start_sec);
hr_num = Integer.parseInt(hr);
min_num = Integer.parseInt(min);
sec_num = Integer.parseInt(sec);
if (abbr.equals("pm")); {
start_hr_num += 12;
}
final_hr = (start_hr_num + hr_num);
final_min = (start_min_num + min_num);
final_sec = (start_sec_num + sec_num);
if (final_sec >= 60) {
final_min++;
final_sec -= 60;
}
if (final_min >= 60) {
final_hr++;
final_min -= 60;
}
if (final_hr >= 24) {
final_hr -= 24;
}
if (final_hr > 12) {
final_hr -= 12;
abbr.equals("pm");
}
else if (final_hr == 12) {
final_hr -= 12;
abbr.equals("am");
}
else {
abbr.equals("am");
}
JOptionPane.showMessageDialog(null, "The new time of day is " + final_hr + ":" + final_min + ":" + final_sec + " " + abbr);
System.exit(0);
}
}
숙제가 아닌 경우 이미 숙제가 있다는 것을 알고 있어야합니다. http://stackoverflow.com/questions/439903 –
클래스 이름의 E7은 "운동 7"이라는 것을 가리키며 학기 중 그 시간대입니다 ... – Tim
학교 일입니다. 우리는 지금까지 우리가 가지고있는 제한된 지식을 사용하여 이것을 달성해야합니다 (2 주 정도의 재료 만 다룹니다). 나는 내 자신의 길을 고투하고 난 후에 내가 온라인에서 찾을 수있는 대체 솔루션을 보게 될 것이다. :). – Deimos