되는대로 살자

[C언어 기출문제&풀이] 초 변환 본문

2009~2014/C/C++

[C언어 기출문제&풀이] 초 변환

malu 2010. 11. 1. 20:43
프로그램 명: sec(open problem)
제한시간: 1 초

초가 입력으로 주어질 때 이를 몇 날 몇 시간 몇 분 몇 초 인지를 변경하는 프로그램을 작성.

입력

초(second)가 입력으로 주어진다. 10 000 000 이하의 정수

출력

4 개의 정수가 출력된다.

날 시 분 초

입출력 예

입력

70

출력

0 0 1 10


풀이 : 날 -> 시간 -> 분 -> 초 순으로 입력받은 초에서 계산하여 빼준다. 주의할 점은 입력이 10,000,000이하의 정수이기 때문에 int 형으로는 담을 수 없다는 점이다.

--------------------------------------------------
#include <stdio.h>

int main()
{
   int d,t,m,s;
    long n;
   d=t=m=s=0;
   scanf("%d",&n);

    while(2) {
  if(n>=86400) { d++; n-=86400; }
  else break;
 }
 while(3) {
  if(n>=3600) { t++; n-=3600; }
  else break;
 }
 while(4) {
  if(n>=60) { m++; n-=60; }
  else break;
 }
   printf("%d %d %d %d",d,t,m,n);
}
-----------------------------------------