Algorithm/BOJ
[SISS] C 백준 5주차 (2742, 2753, 2884)
SolB
2022. 1. 30. 17:42
No. 2742
#include<stdio.h>
int main()
{
int n;
scanf("%d", &n);
while (n > 0) {
printf("%d\n", n);
n--;
}
}
코드 설명 : 먼저 n을 입력받았다. n이 0보다 클때까지 계속 n을 출력하도록하고 n을 1씩 줄이도록 반복문을 실행시켜주었다. 출력될 때마다 줄바꿈 또한 해주었다.
No. 2753
#include<stdio.h>
int main()
{
int y;
scanf("%d", &y);
if ((y % 4 == 0 && y % 100 != 0) || y % 400 == 0) printf("1");
else printf("0");
}
코드 설명 : 연도를 입력받고 if문으로 이 연도가 4의 배수이면서 100의 배수가 아닌지, 또는 이 연도가 400의 배수인지 확인하고 맞다면 1을 출력하도록 하였다. 이 조건을 만족하지 않는다면 0을 출력하도록 하였다.
No. 2884
#include<stdio.h>
int main()
{
int h, m;
scanf("%d %d", &h, &m);
if (m >= 45) m -= 45;
else {
if (h == 0) h = 23;
else h -= 1; m += 15;
}
printf("%d %d", h, m);
}
코드 설명 : h와 m을 입력받았다. 각 시, 분을 의미하는 변수이다. 45분 이상일 때에는 h 변화 없이 m만 45를 빼주면 된다. 45분 미만일 때 h가 0이면 23으로 바꿔주고 0이 아니면 h에서 1빼주고 m은 60분에서 45분을 뺀 후에 원래 m값을 더해주면 되므로 m+=15를 해주면 값이 나온다. 따라서 이를 출력해주었다.