파이썬 서술형 — SET 18¶
이름: ____________ 점수: _____ / 100
출력형은 실행 결과와 그렇게 되는 이유를 함께 서술하세요. 작성형은 실행 가능한 코드로 답하세요. (범위: 1~8장)
[Ⅰ. 출력 예측 + 이유 서술] (각 10점)¶
1.¶
x = 10
y = x
x = 20
print(x, y)
2.¶
nums = [1, 2, 3, 4, 5]
print(nums[1:4], nums[::-1], nums[-2:])
3.¶
def f(n):
if n == 0:
return 0
return n + f(n - 1)
print(f(4))
4.¶
s = "hello"
result = ""
for ch in s:
if ch != "l":
result += ch
print(result)
[Ⅱ. 코드 작성] (각 15점)¶
5.¶
문자열을 받아 거꾸로 뒤집은 문자열을 반환하는 함수 rev(s)를 작성하시오. (슬라이싱 [::-1]을 쓰지 말 것)
rev("python") → "nohtyp"
6.¶
정수 n이 소수인지 판별하여 True/False를 반환하는 함수 is_prime(n)을 작성하시오.
7.¶
정수 리스트 nums와 기준값 t를 받아, t 이상인 원소의 개수를 반환하는 함수 count_ge(nums, t)를 작성하시오.
[Ⅲ. 오류 찾기·수정] (15점)¶
8.¶
다음 코드는 실행 중 오류가 난다. 무슨 오류가 왜 나는지 설명하고, 의도(리스트의 마지막 값 출력)대로 고친 코드를 작성하시오.
nums = [1, 2, 3]
print(nums[3])