Unit 14
14.6 연습 문제 ▶ A 기업의 입사 시험은 필기 시험 점수가 80점 이상이면서
코딩 시험을 통과해야 합격이라고 정했습니다
(코딩 시험 통과 여부는 True, False로 구분).
다음 소스 코드를 완성하여 '합격', '불합격'이 출력되게 만드세요.
# written_test = 75
# coding_test = True
# _____ written_test _________ :
# print('합격')
# else:
# print('불합격')
written_test = 75
coding_test = True
if written_test >= 80 and coding_test == True: # 정답
print('합격')
else:
print('불합격')
if 조건문에는 논리 연산자를 사용하여 조건식을 여러 개 지정할 수 있습니다.
written_test >= 80 and coding_test == True 처럼 and 논리 연산자를 사용하면
written_test가 80 이상이면서 coding_test가 '참'일 때 if의 코드가 실행됩니다.
14.7 실습 문제 ▶ 표준 입력으로 국어, 영어, 수학, 과학 점수가 입력됩니다.
여기서 네 과목의 평균 점수가 80점 이상일 때 합격이라고 정했습니다.
평균 점수에 따라 '합격', '불합격'을 출력하는 프로그램을 만드세요
(input에서 안내 문자열은 출력하지 않아야 합니다).
단, 점수는 0점부터 100점까지만 입력받을 수 있으며 범위를 벗어났다면
'잘못된 점수'를 출력하고 합격, 불합격 여부는 출력하지 않아야 합니다.
# 입력 : 89 72 93 82
# 결과 : 합격
# 정답
korean, english, mathematics, science = map(int, input().split())
if 0 <= korean <= 100 and 0 <= english <= 100 and 0 <= mathematics <= 100 and 0 <= science <= 100 :
if (korean + english + mathematics + science) / 4 >= 80 :
print("합격")
else :
print("불합격")
else :
print("잘못된 점수")
# korean, english, mathematics, science = map(int, input().split())
# if korean < 0 or korean > 100 or english < 0 or english > 100 or mathematics < 0 or mathematics > 100 or science < 0 or science > 100 :
# print("잘못된 점수")
# else :
# if (korean + english + mathematics + science) / 4 >= 80 :
# print("합격")
# else :
# print("불합격")
모든 점수가 0점 이상이거나 100점 이하인지 검사한 뒤에 평균값을 구하고 합격과 불합격을 판별합니다.
if 부분에서 합격 불합격 여부를 판단하고, 점수가 범위를 벗어나면
else 부분에서 print로 '잘못된 점수'를 출력합니다.
(korean + english + mathematics + science) / 4 >= 80 과 같이 조건문 안에서
평균을 구할 때는 반드시 덧셈 부분을 괄호로 묶어야 합니다.
괄호로 묶지 않으면 나눗셈이 먼저 계산되어 잘못된 결과가 나옵니다.
만약 둘 중 하나라도 만족했을 때 '참' 이 출력되도록 하려면 or 논리 연산자를 사용하면 됩니다.
참조 : https://dojang.io/course/view.php?id=7
'python' 카테고리의 다른 글
Unit 17 문제 풀이 (0) | 2022.01.15 |
---|---|
Unit 16 문제 풀이 (0) | 2022.01.15 |
Unit 15 문제 풀이 (0) | 2022.01.15 |
Unit 13 문제 풀이 (0) | 2022.01.15 |
파이썬 코딩 도장 Unit 3 ~ Unit 12 정리 (0) | 2022.01.07 |