본문 바로가기
Programming/Python

[BAEKJOON] 백준 Python 2단계 조건문 1330번 / 9498번 / 2753번 / 두 수 비교하기 / 시험 성적 / 윤년

by EunjiBest 2022. 4. 1.

[BAEKJOON] 파이썬 Python 2단계 조건문 1330번 / 9498번 / 2753번 / 두 수 비교하기 / 시험 성적 / 윤년

 

 

1330번 (두 수 비교하기)

 

두 정수 A와 B가 주어졌을 때, A와 B를 비교하는 프로그램을 작성하시오.

입력 : 첫째 줄에 A와 B가 주어진다. A와 B는 공백 한 칸으로 구분되어져 있다.
출력 : 첫째 줄에 다음 세 가지 중 하나를 출력한다. A가 B보다 큰 경우에는 '>'를 출력한다. A가 B보다 작은 경우에는 '<'를 출력한다. A와 B가 같은 경우에는 '=='를 출력한다.
제한 : -10,000 ≤ A, B ≤ 10,000

 

조건문 파트인 만큼! if문을 사용해서 문제를 풀어보도록 하겠다.

 

1.  A, B를 input()으로 넣는다.

2. if문을 사용해서

3. A>B 이면 > 출력

4. A<B 이면 < 출력

5. A==B 이면 == 출력

 

A,B = map(int, input().split())

if A>B:
  print(">")

if A<B:
  print("<")

if A==B:
  print("==")

 

위 순서 그대로 코드를 짰더니 무난하게 정답!

elif를 사용해도 되지만, 그건 다음문제에서 사용해보도록 하겠다.

 

 

 

 

9498번(시험성적)

 

시험 점수를 입력받아 90 ~ 100점은 A, 80 ~ 89점은 B, 70 ~ 79점은 C, 60 ~ 69점은 D, 나머지 점수는 F를 출력하는 프로그램을 작성하시오.

입력 : 첫째 줄에 시험 점수가 주어진다. 시험 점수는 0보다 크거나 같고, 100보다 작거나 같은 정수이다.
출력 : 시험 성적을 출력한다.

 

1. 시험점수(score)를 input()으로 입력

2. if사용

3. 90 <= score <= 100  -> A

4. 80 <=  score <= 89. -> B

5. 70 <= score <= 79.  -> C

6. 60 <= score <= 69.  -> D

7. 그렇지 않으면 F

 

score = int(input())

if 90 <= score <= 100:
  print("A")

elif 80 <= score <= 89:
  print("B")

elif 70 <= score <= 79:
  print("C")

elif 60 <= score <= 69:
  print("D")

else:
  print("F")

 

위 문제와 달리 elif와 else를 사용해서 문제를 풀었다.

elif를 사용하여 조건을 여러개 추가하고, elif조건에 모두 맞지 않는다면 else를 이용해서 F를 출력하게 해주었다.

 

 

 

2753(윤년)

 

연도가 주어졌을 때, 윤년이면 1, 아니면 0을 출력하는 프로그램을 작성하시오.
윤년은 연도가 4의 배수이면서, 100의 배수가 아닐 때 또는 400의 배수일 때이다.
예를 들어, 2012년은 4의 배수이면서 100의 배수가 아니라서 윤년이다. 1900년은 100의 배수이고 400의 배수는 아니기 때문에 윤년이 아니다. 하지만, 2000년은 400의 배수이기 때문에 윤년이다.

입력 : 첫째 줄에 연도가 주어진다. 연도는 1보다 크거나 같고, 4000보다 작거나 같은 자연수이다.
출력 : 첫째 줄에 윤년이면 1, 아니면 0을 출력한다.

 

윤년? 엄청 오랜만에 듣는 단어이다.

살면서 윤년이라는 단어를 쓰는일이 거의 없으니..ㅎ

.

.

.

그렇다고 한다.

 

 

윤년(x) = 4의 배수이고(and) 100의 배수가 아니거나(or) 400의 배수일 때.

즉,

x = 4의 배수 and 100의 배수가 아닐 때

x = 4의 배수 and 400의 배수일 때

 

위 식을 그대로 코딩해보았다.

 

x = int(input())

if x%4 == 0 and x%100 != 0:
  print("1")

elif x%4 == 0 and x%400 == 0:
  print("1")

else:
  print("0")

 

 

 

x 나누기 4의 나머지가 0 -> (4의 배수)

x 나누기 400의 나머지가 0 -> (400의 배수)

x 나누기 100의 나머지가 0 -> (100의 배수)

인것을 이용하여 적어보았다.

 

 

 

윤년(x) = 4의 배수이고(and) 100의 배수가 아니거나(or) 400의 배수일 때.

로 식을 간략하게 정리한다면 아래 코드처럼 elif를 사용하지않고 작성할 수 있다.

x = int(input())

if (x%4 == 0 and x%100 != 0) or x%400 == 0:
  print("1")

else:
  print("0")

 

 

 

 

 

 

 

 

 

 

반응형

댓글