728x90
-
- 2. 조건문
- 1) 1330번 - 두 수 비교하기
- 2) 9498번 - 시험 성적
- 3) 2753번 - 윤년 ←
- 4) 14681번 - 사분면 고르기
- 5) 2884번 - 알람 시계
- 6) 2525번 - 오븐 시계
- 7) 2480번 - 주사위 세개
- 2. 조건문
2. 조건문
3) 2753번 - 윤년
문제
연도가 주어졌을 때, 윤년이면 1, 아니면 0을 출력하는 프로그램을 작성하시오.
윤년은 연도가 4의 배수이면서, 100의 배수가 아닐 때 또는 400의 배수일 때이다.
예를 들어, 2012년은 4의 배수이면서 100의 배수가 아니라서 윤년이다. 1900년은 100의 배수이고 400의 배수는 아니기 때문에 윤년이 아니다. 하지만, 2000년은 400의 배수이기 때문에 윤년이다.
입력
첫째 줄에 연도가 주어진다. 연도는 1보다 크거나 같고, 4000보다 작거나 같은 자연수이다.
출력
첫째 줄에 윤년이면 1, 아니면 0을 출력한다.
제한
예제 입력 1
2000
예제 출력 1
1
예제 입력 2
1999
예제 출력 2
0
[ 정답 코드 ]
a = int(input())
if a % 400 == 0 :
print(1)
elif a % 4 == 0 :
if a % 100 != 0 :
print(1)
else :
print(0)
else :
print(0)
[문제 풀이]
- 조건 :
- 값이 4의 배수이면서 100의 배수가 아닌 경우
- 400의 배수
- 풀이 :
- a = int(input())
- 입력되는 값을 a 에 넣어준다.
- if a % 400 == 0 :
print(1)- if 조건문으로 입력 받은 a 값을 400으로 나눠 값에 나머지 값이 0이랑 같으면 조건이 성립하는 식.
- a / 400 의 값이 나머지가 0 일 경우 조건 2번이 성립되어 윤년으로 확인 가능.
- elif a % 4 == 0 :
if a % 100 != 0 :
print(1)
else :
print(0)- a / 4 의 값이 나머지가 0 인 경우 다시 한번 조건을 더 확인하는데 a / 100 의 값이 0 이 아닌 경우 조건이 성립하는 식.
- 조건 1번에 해당하는 값을 찾는 식으로 4의 배수 이면서 100의 배수가 아닌 조건을 찾아 결과 값을 찾는다.
- 추가로 if -> elif -> if 으로 조건문 안에 또 다른 조건문을 들어가 else :로 해당 조건 이 아닌 경우 0을 출력할 수 있도록 첫 조건문이 아닌 경우 수행할 수 있는 수행문을 추가하는 것이다.
- else :
print(0)- 위에 사용한 else 와 마찬가지로 전체 조건들을 성립하지 않을 경우 수행할 수 있는 수행문.
- a = int(input())
문제 출처 : https://www.acmicpc.net/problem/2753
2753번: 윤년
연도가 주어졌을 때, 윤년이면 1, 아니면 0을 출력하는 프로그램을 작성하시오. 윤년은 연도가 4의 배수이면서, 100의 배수가 아닐 때 또는 400의 배수일 때이다. 예를 들어, 2012년은 4의 배수이면서
www.acmicpc.net
728x90
반응형
'coding > Algorithm [BOJ]' 카테고리의 다른 글
[Python][조건문] #020 - 2884번 파이썬 :: 알람 시계 - Coding Farm (0) | 2022.09.05 |
---|---|
[Python][조건문] #019 - 14681번 파이썬 :: 사분면 고르기 - Coding Farm (0) | 2022.09.05 |
[Python][조건문] #017 - 9498번 파이썬 :: 시험 성적 - Coding Farm (0) | 2022.09.05 |
[Python][조건문] #016 - 1330번 파이썬 :: 두 수 비교하기 - Coding Farm (0) | 2022.09.05 |