Wargame/CodeUp

1173 30분전

De1fin 2019. 7. 26. 17:21

문제

수호는 30분 전으로 돌아가고 싶은 1人 이다.

공백을 기준으로 시간과 분이 주어진다.

그러면 이 시간을 기준으로 30분전의 시간을 출력하시오.

예)

12 35  =====> 12 5

12 0 ======> 11 30

11 5 ======> 10 35


입력

시와 분이 입력된다.

(시의 범위 : 0~ 23)

(분의 범위 : 0~ 59)


출력

입력된 시간의 30분 전의 시간을 출력하시오.


입력 예시 

12 35


출력 예시

12 5


코드

#include <stdio.h>

int main()

{
    int hour, minute, i;

    scanf("%d %d", &hour, &minute);

    if(minute-30<0){                     // minute 값이 29분 이하일 경우, 다음 if문 안의 블록 실행
        --hour;                                // hour 값을 1만큼 줄여준다.
        hour<0? hour=23:hour;   // 0시에서 23시로 변경하기 위한 코드
        minute += 30;                  // minute에 60분을 더해서 -30한 것과 값이 같다.
    }
    else minute -= 30;               // minute 값이 30분 이상일 때는 30분만 빼주면 된다.
    printf("%d %d", hour, minute);

    return 0;    
}