반응형

파이썬 조건문 9

[T-SUM] 5주차 자료 - if/else/elif 조건문, and/or

오늘의 내용 미리보기 본문 세상을 살다 보면 조건에 따라 결과가 달라지는 경우가 있습니다. 비밀번호가 맞으면 금고가 열린다거나, 올바른 출입증이 아니면 출입이 안 된다거나 뭐 그런 상황이 있어요. 코딩을 하다가도 이런 상황을 자주 마주칩니다. 특정 사용자는 이용이 불가능한 게시판이 있다던지, 로그인을 하지 않으면 접속이 안된다던지 하는 그런 상황이 있죠. 우리는 이런 상황을 이렇게 표현합니다. '만약 ~ 라면' 이를 조건문이라고 합니다. 파이썬에서는 이를 if와 else를 사용해서 표현합니다. 우선 예시를 한 번 볼까요? 배우지는 않았지만 어째서인지 읽을 수는 있을 것 같죠? 있는 그대로 읽으면 됩니다. 만약 10이 7보다 크다면(조건) 정답을 출력하라(결과) 이런 식으로 조건문은 조건과 그에 따른 결과..

T-SUM 멘토링 2023.07.06

[파이썬, Python] 백준 4344: 평균은 넘겠지

문제 https://www.acmicpc.net/problem/4344 4344번: 평균은 넘겠지 대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다. www.acmicpc.net 코드 C = int(input()) for _ in range(C): overmean = [] Nscore = list(map(int, input().split())) mean = (sum(Nscore) - Nscore[0])/(len(Nscore)-1) for i in range(1, len(Nscore)): if Nscore[i] > mean: overmean.append(Nscore[i]) else: continue per = len(overmean) / (len..

[파이썬, Python] 백준 25304: 영수증

문제 https://www.acmicpc.net/problem/25304 25304번: 영수증 준원이는 저번 주에 살면서 처음으로 코스트코를 가 봤다. 정말 멋졌다. 그런데, 몇 개 담지도 않았는데 수상하게 높은 금액이 나오는 것이다! 준원이는 영수증을 보면서 정확하게 계산된 것 www.acmicpc.net 코드 X = int(input()) N = int(input()) sum = 0 for i in range(N): a, b = map(int, input().split()) sum += a*b if sum == X: print("Yes") else: print("No") 설명 물건의 가격을 입력받고, 총합이 맞는지 비교하는 문제이다. 우선 x,n을 각각 입력받고, sum을 통해 합을 입력받을 변수를 ..

[파이썬, Python] 백준 2480: 주사위 세개

문제 https://www.acmicpc.net/problem/2480 2480번: 주사위 세개 1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다. 같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다. 같은 눈이 2개 www.acmicpc.net 코드 a, b, c = map(int, input().split()) if a == b == c: print(10000 + int(a)*1000) elif a==b or a==c: print(1000 + int(a)*100) elif b==c: print(1000 + int(b)*100) else: if a > b and a > c: print(int(a)*100) elif b..

[파이썬, Python] 백준 2525: 오븐 시계

문제 https://www.acmicpc.net/problem/2525 2525번: 오븐 시계 첫째 줄에 종료되는 시각의 시와 분을 공백을 사이에 두고 출력한다. (단, 시는 0부터 23까지의 정수, 분은 0부터 59까지의 정수이다. 디지털 시계는 23시 59분에서 1분이 지나면 0시 0분이 된다.) www.acmicpc.net 코드 A, B = map(int, input().split()) C = int(input()) A += C // 60 B += C % 60 if B >= 60: A+=1 B-=60 if A >= 24: A-=24 print(A,B) 설명 앞선 시계 문제와 크게 차이 없어 보이지만, 조금 더 난이도가 있다고 생각한다. C의 범위가 달라지기에 조금 더 생각을 해보아야 한다. 우선 C..

[파이썬, Python] 백준 2884: 알람 시계

문제 https://www.acmicpc.net/problem/2884 2884번: 알람 시계 상근이는 매일 아침 알람을 듣고 일어난다. 알람을 듣고 바로 일어나면 다행이겠지만, 항상 조금만 더 자려는 마음 때문에 매일 학교를 지각하고 있다. 상근이는 모든 방법을 동원해보았지만, www.acmicpc.net 코드 H, M = map(int, input().split()) if H != 0: if M >= 45: print(H, M - 45) else: print(H-1, M + 15) else: if M >= 45: print(H , M - 45) else: print(23, M + 15) 설명 간단해 보이는 문제지만, 조금 생각할 부분이 있다. 우선 45분을 빼는 문제라서, 'M'에 해당하는 '분'이 ..

[파이썬, Python] 백준 14681: 사분면 고르기

문제 https://www.acmicpc.net/problem/14681 14681번: 사분면 고르기 점 (x, y)의 사분면 번호(1, 2, 3, 4 중 하나)를 출력한다. www.acmicpc.net 코드 x = int(input()) y = int(input()) if x > 0 and y > 0: print("1") elif x > 0 and y < 0: print("4") elif x < 0 and y < 0: print("3") else: print("2") 설명 조건문을 활용한 문제이다. 각 조건에 x와 y에 대한 조건이 들어가는데, 사분면의 성질에 따라 조건을 입력해주면 되는 간단한 문제이다.

[파이썬, Python] 백준 9498: 시험 성적

문제 https://www.acmicpc.net/problem/9498 9498번: 시험 성적 시험 점수를 입력받아 90 ~ 100점은 A, 80 ~ 89점은 B, 70 ~ 79점은 C, 60 ~ 69점은 D, 나머지 점수는 F를 출력하는 프로그램을 작성하시오. www.acmicpc.net 코드 a= int(input()) if 100>= a >= 90: print("A") elif 90 > a >= 80: print("B") elif 80 > a >= 70: print("C") elif 70 > a >= 60: print("D") else: print("F") 설명 앞서 말했던 if 와 elif 그리고 else를 통한 범위 출력 문제다. 간단하게 범위만 나눠주면 별 문제 없이 풀 수 있다.

[파이썬, Python] 백준 1330: 두 수 비교하기

문제 https://www.acmicpc.net/problem/1330 1330번: 두 수 비교하기 두 정수 A와 B가 주어졌을 때, A와 B를 비교하는 프로그램을 작성하시오. www.acmicpc.net 코드 a, b = map(int, (input().split())) if a > b: print(">") elif a < b: print("")' 와 같이 조건이 참(True)이라면, 실행하게 될 동작으로 나뉜다. 조건이 하나만 있는 경우도 있겠지만 그렇지 않은 경우에는, 'elif'를 사용하는데 이는 'else if'를 줄인 것이다. elif의 개수에는 제한이 없고 얼마든지 사용이 가능하다. 마지막으로 'else'를 사용하는데, 이는 위의 모든 조건(if, elif)가 거짓일 때, 실행하게 된다.

반응형