강의로 돌아가기
걸음마

다음 강의 삼항연산자 실습 오류

Q1) 아래와 같이 실습을을 작성하였는데 출력은 정상적으로 되어지는것 같은데 실패로뜹니다. 혹시 저렇게 작성하면 안되는 것인지 문의드립니다. 또, 힌트로 주어진 hour > 12 ? 오후 : 오전; 로 입력해보아도 동일하게 실패가 뜹니다.

Q2) 여기서 궁금한점이 힌트의 경우 만약 시간이 12이면 오전으로 결과값이 출력되는 것이 아닌가요? >=로 연산자를 넣어야하는 것이 아닌지 질문드립니다.


[문제]
변수 hour에는 현재 시각이 들었습니다. hour가 12보다 작으면 오전, 그렇지 않으면 오후라는 값을 ampm에 저장하도록 빈칸을 채워주세요.

[코드]

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 + "입니다.");
    }
}

[실행 결과]
지금시간은 3시이고, 오전입니다.

1 개의 답변
Demi

안녕하세요. 올려주신 코드를 제출하니 저는 정답이라고 판정되었습니다. 코드에는 이상이 없어보이는데, 왜 실패라고 판정되는지는 잘 모르겠습니다.

다음 강의에서 코드를 초기화 한 후, 빈칸에 hour < 12 ? "오전" : "오후" ;라고 적어서 다시 제출해보시겠어요?

※ 프로그래머스는 이전에 채점했던 코드와 똑같은 코드는 새로 채점하지 않습니다. 따라서 같은 코드로 채점한 결과가 있습니다.라는 문구가 뜬다면 코드 사이에 공백 문자(스페이스 등)을 넣어 채점을 다시 시도해보세요.

  • Demi
    같은 문제가 계속 발생한다면 댓글을 달아주세요. Demi 2019.01.24 17:11
답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.