정보처리기사 실기PythonPython - 리스트 컴프리헨션과 조건난이도 3SHORT_ANSWER

정보처리기사 실기 Python - 리스트 컴프리헨션과 조건 기출문제 #719

문제

다음 Python 코드의 실행 결과를 쓰시오.

Python
data = [7, 3, 9, 2, 8, 1, 6, 4] result = [x ** 2 if x > 5 else x // 2 + 1 if x % 2 == 0 else x * 3 for x in data] print(result)

정답

[49, 9, 81, 2, 64, 3, 36, 3]

[49, 9, 81, 2, 64, 3, 36, 3]

해설

복잡한 삼중 조건부 표현식을 포함한 리스트 컴프리헨션 문제입니다. 각 원소에 대해 다음 조건을 순차적으로 적용합니다: 1) x > 5이면 x²을 계산, 2) 그렇지 않고 x가 짝수이면 x//2+1을 계산, 3) 그 외(홀수)는 x3을 계산. 7: 7>5 → 7²=49, 3: 홀수 → 33=9, 9: 9>5 → 9²=81, 2: 짝수 → 2//2+1=2, 8: 8>5 → 8²=64, 1: 홀수 → 1*3=3, 6: 6>5 → 6²=36, 4: 짝수 → 4//2+1=3. 중첩된 조건부 표현식의 우선순위와 각 조건의 논리적 흐름을 정확히 파악해야 합니다.

이런 문제 20~50개를 한 번에 풀어보세요

매번 새로 추가되는 모의고사 + 오답 자동 복습 + 회차별 실력 추적. 회원가입 후 무료 이용.