모두CBT

24-2아래 Python 프로그램을 실행한 결과를 적으시오.def co… | 2024년 정보처리기사실기 2회차 기출문제 상세 페이지

1

24-2

아래 Python 프로그램을 실행한 결과를 적으시오.

def count(text, pat):
    hit = 0
    for i in range(len(text) - len(pat) + 1):
        if text[i:i + len(pat)] == pat:
            hit += 1
    return hit

word = "xyzxyxxyzyx"
a = count(word, "xy")
b = count(word, "yx")
print(f"xy={a}", f"yx={b}", sep=", ")
해설

xy=3, yx=2


[해설]

count는 text를 앞에서부터 pat 길이만큼 잘라(슬라이싱) pat과 같을 때마다 1씩 센다. 겹치는 위치도 모두 센다.

  • word = x y z x y x x y z y x (인덱스 0~10)
  • "xy": 인덱스 0, 3, 6 → 3번
  • "yx": 인덱스 4, 9 → 2번

print는 두 인자를 sep=", "로 이어 찍으므로 xy=3, yx=2가 출력된다.

내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.