본문 바로가기
CODING/BAEKJOON

백준 파이썬 2단계 if문 문제풀이 : 1330, 9498, 2753, 14861, 2884

by pharmerci 2021. 12. 15.
728x90

파이썬은 거의 처음이라 생활코딩 참고하면서 문제를 풀었습니다.

파이썬이 범용성이 더 높은 것 같아서 파이썬 공부를 시작했어요! C랑 비슷한듯 다름(아직까진)

 

답 밑에 나와있으니까 먼저 풀어보시길!

 

 

 

 


1330

두 수를 입력받고 두 수의 크기를 비교하는 문제입니다.

 

 

파이썬은 처음이라 친절하게 설명할 것임 허허

 

일단 a랑 b를 받는다. 두개를 한번에 받을 것이기 때문에 split으로 구분하겠다고 해줘야 함

그러면 우리가 입력할땐 10 14 이렇게 입력하면 알아서 a=10 b=14 이렇게 선언됨

 

그런데 이건 다 문자형으로 받아진거라서 각자 int형으로 바꿔줘야함 그게 2,3번째 줄 내용이다.

 

그리고 if문! C언어는 :를 안써줬는데 여기선 :을 써준다.

printf가 아니라 print이다.

else if가 아니라 elif다!

 

 

 

 


9498

시험성적을 입력받고 점수에 따라 등급을 출력하는 문제이다.

 

 

input으로 입력받고, a를 int형으로 변환한다.

그리고 4,6,8,10처럼 조건을 입력해서 그에 따라 등급을 출력하는데

조건이 여러개일 때 C언어에서는 &&이나 ||를 써줬는데 여기서는 and or 이렇게 쓴다.

 

 

 

 


2753

연도를 입력받아 윤년이면 1, 윤년이 아니면 0을 출력하는 문제이다.

윤년은 4로 나누어떨어지면서 100으로는 안나누어떨어지거나 //// 400으로 나누어떨어지는 해이다.

 

 

아까처럼 연도 입력 받고~

위에서 말했던 것처럼 윤년인 해가 나오면 1 출력하고 이외의 연도는 다 0 출력하도록 만들어준다.

 

처음에 계속 나머지연산자인 %를 안쓰고 /를 써서 오답이 계속 났었다..

애꿎은 if문만 계속 순서 바꿔주고 있었음 ㅋㅎ

 

 

 

 

 


14681

두 수를 입력을 각각 받아서 몇사분면인지 표시해주는 문제이다.

 

 

x=int(input()) 이렇게 쓰면

x=input()

x=int(x)

이 두 코드를 한번에 실행할 수 있게 된다!

 

나머지는 다 했던거니까~

 

 

 

 


2884

 

입력한 시간에서 45분 이전의 시간을 출력하는 문제이다.(24시간 기준 시간으로)

문제 빌드업이 좀 웃겼는데 다들 들어가보세욤 ㅋㅋ

 

 

두 수를 한번에 받는다. split으로 나눠서 받아주고

int형으로 각각 바꿔준다. 여기서 h는 시간 m은 분이다.

 

나는 어떤 느낌으로 문제를 풀었냐면

1. 분이 45분 이후이다?(ex. 22:46, 0:54 ....) 이런식 -> 시간은 그대로 분만 45 빼줌

2. 시간이 0시이다?(ex. 0:5, 0:37 ...) 이런식, 근데 분은 45분 이후는 아님 왜냐하면 1에서 이미 걸러졌으니까 -> 시간은 23으로 바뀌고 60-(45-m)분으로 바꿈

3. 나머지면 시간은 1 빼주고 분은 60-(45-m)으로 출력

 

이렇게 풀었다.

 

다른 더 좋은 방법이 있는지는 모르겠다 깔깔(~ ̄▽ ̄)~

 

 

 

 

 

728x90