콘텐츠로 이동

파이썬 서술형 — 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])