강의로 돌아가기
-

조건이 조금 이상하지 않나요?

1~ 24시라고 쳤을때 12시는 오후 24시는 오전이잖아요
근데 조건문을 그냥 hour < 12 라고 해버리면 24시일때는 오후로 처리되는거 아니에요?

작성중인 코드―TernaryExam.java
1
2
3
4
5
6
7
8
9
10
11
import java.util.Calendar;
public class TernaryExam{
  public static void main(String[] args){
    //hour에는 현재 시간이 24시간 단위로 들어 있습니다. 
    int hour = Calendar.getInstance().get(Calendar.HOUR_OF_DAY);
    String ampm;
    //삼항연산자를 이용해서 ampm에 오전 또는 오후의 값을 가지도록 만들어 보세요.
    ampm = (hour < 12) ? "오전":"오후";
    System.out.println("지금시간은 "+hour+"시이고, "+ampm+"입니다.");
  }
}
1 개의 답변
프로그래머스

편의상 24시는 오후, 00시는 오전으로 생각합니다.

  • 새

    주어진 정답처럼 ampm = (hour > 12) ? "오후": "오전"; 코드를 입력했을 때엔, 12시일 경우 오전으로 표시됩니다. 정답에 오류가 있는 것 아닌가요? 질문자님의 말씀처럼 ampm = (hour < 12) ? "오전": "오후"; 가 되어야 하는 것 같습니다.

    새―2019.08.08 01:07
답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.