본문 바로가기
Exam & Study

정보처리기사 실기 Python편

by GoodDayDeveloper 2022. 5. 25.
반응형

 

 

 

안녕하세요. 

정보처리기사 실기에 대해 포스팅을 주기적으로 진행하다 보니, 

프로그래밍 언어에 대한 문제가 늘어나는 것을 볼 수 있었고,

이로 인해 많은 수험자분들이 많이 탈락하거나 힘들어하는 모습을 볼 수 있었습니다.

 

 

그래서 정보처리기사의 시험 기준의 소스코드 문제를 정리해보려합니다.

기출문제이면서 보완설명을 덧붙여 정리하였으니 도움이 되었으면 좋겠습니다. (녹색은 답 / 파랑색은 해설입니다.)

 

 

대체적으로 출제되는 C언어, JAVA, Python으로 나뉘어 정리해보겠습니다.

(문제는 계속해서 업데이트될 예정입니다.)

 

 

클릭하면 해당 페이지로 이동됩니다.
시험일정 2024년 정보처리기사 시험 일정 정보
2023년 정보처리기사 시험 일정 정보
기출문제 2023년 3회 정보처리기사 실기 기출문제
2023년 2회 정보처리기사 실기 기출문제
2023년 1회 정보처리기사 실기 기출문제
2022년 3회 정보처리기사 실기 기출문제
2022년 2회 정보처리기사 실기 기출문제
2022년 1회 정보처리기사 실기 기출문제
2021년 3회 정보처리기사 실기 기출문제
2021년 2회 정보처리기사 실기 기출문제
2021년 1회 정보처리기사 실기 기출문제
2020년 4회 정보처리기사 실기 기출문제
2020년 3회 정보처리기사 실기 기출문제
2020년 2회 정보처리기사 실기 기출문제
2020년 1회 정보처리기사 실기 기출문제
정리&요약 [2020년 ~] 정보처리기사 실기 족보 1탄 (정리)
[2020년 ~] 정보처리기사 실기 족보 2탄 (정리)
[2020년 ~] 정보처리기사 실기 족보 3탄 (요약)
정보처리기사 실기 공부 방법 (꿀팁)
정보처리기사 실기 쉽게 이해하는 방법 (스토리텔링)
프로그래밍 언어 문제 정보처리기사 실기 Python편
정보처리기사 실기 Java편
정보처리기사 실기 C언어편

 

 

 

 

 

정보처리기사 실기 Python편

 

 

 

 

 

 

다음 Python으로 구현된 프로그램과 입력값을 보고 실행 결과를 작성하시오.

 

1
2
3
4
5
6
= input()
= x.capitalize()
= x.split()
print(y[0][::2], end = '*')
print(y[1][3:6])
 
cs

 

입력 : Python programming

 

 

더보기

Pto*gra

 

 

input()을 통해 입력받은 데이터를 x에 저장합니다.


capitalize()를 통해서 각 단어의 첫 글자를 대문자로 변경하여 x에 저장합니다.


split()을 통해서 공백을 기준으로 y에 배열 형태로 저장합니다. (y[0] : python , y[1] : programming)


y[0]에 저장된 문자열의 0번 위치에서 2씩 증가하면서 각 글자를 출력하고 종료 문자인 *를 출력합니다. 
(Pto*) (p가 0으로 시작되어 출력된 값입니다.)


y[1]에 저장된 문자열의 3번째 위치에서 5번째 위치까지 출력합니다. (gra)


합친값은 Pto*gra가 됩니다.

 

 

 

 

 

 

 

 

 

 

 

 

 

다음 python의 프로그램과 입력값을 분석하여 실행 결과에 대해 작성하시오.

 

 

1
2
3
4
5
arr_str = input('input String :').split('-')
arr_len = int(input('input number : '))
arr_val = list(range(0,arr_len,2))
arr_val.remove(4)
print(arr_str[1].find('i'+ arr_val[2])
cs

 

입력 :

input string : information-technology

input number : 12

 

 

더보기

5

 

 

infomation-technology가 split으로 나뉘어져 arr_str에 담김니다. 
arr_str[0] : infomationarr_str[1] : technology

12값이 arr_len에 저장됩니다.

0에서 arr_len -1까지 2씩 증가하는 숫자를 arr_val에 리스트 형식으로 저장되게 됩니다.
arr_val[0] : 0
arr_val[1] : 2
arr_val[2] : 4
arr_val[3] : 6
arr_val[4] : 8
arr_val[5] : 10

 
arr_val의 값 4의 부분을 삭제되고 앞으로 한칸씩 당겨지게 됩니다.
arr_val[0] : 0
arr_val[1] : 2
arr_val[2] : 6
arr_val[3] : 8
arr_val[4] : 10


arr_str[1]에는 i값이 없으므로 -1이 반환되고 arr_val[2]는의 값은 6이므로 5가 출력되게 됩니다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

다음 python의 프로그램을 분석하여 실행 결과에 대해 작성하시오.

 

1
2
3
4
= 20
= 123456.789E-3
print('%d\n%d' % (i, i), end = '/')
print('%.3f' % f)
cs

 

 

더보기

20

20/123.457

 

 

%d에서 20을 출력하고 \n에 의해 개행이되게 됩니다.

그리고 다시 %d로 인해 20이 입력되고 end속성으로 /를 출력합니다.


123456.789E-3이면실수e * (1/10의 거듭제곱) 형태로 계산됩니다.
그래서 123456.789 * (1/1000) = 123.456789 가 됩니다.


f값의 정수는 모두 출력하고 소수점은 반올림하여 3자리를 출력합니다.

 

 

 

 

 

 

 

 

 

 

 

다음 python의 프로그램을 분석하여 실행 결과에 대해 작성하시오.

 

1
2
3
4
5
6
7
8
class charClass :
  a = ["Seoul""Inchon""Kyonggi""Daejun""Daegu""Pusan"]
myVal = charClass()
str01 = ''
for i in myVal.a:
  str01 = str01 + i[0]
print(str01)
 
cs

 

 

더보기

SIKDDP

 

 

charClass의 객체 변수ㅜ myVal를 선언합니다.

str01의 변수를 선언하고

myVal의 리스트 a의 요소 수만큼 문장들을 반복합니다.
각 요소에 i를 할당하면서 문자열만큼 배열값이 들어가게 됩니다. ex)
i[4] = seoul각 요소의 i의 0번째는 각 글자의 첫번째 글자로 나타납니다.

 

 

반응형

 

 

 

다음 Python으로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.

 

1
2
3
= "What's this?"
print("%-10.4s" % a)
print("%10.4s" % a)
cs

 

 

더보기

What      

      What

 

%s는 문자열을 추출하는 서식 문자열이고, -10.4s에서 -는 왼쪽부터 출력하라는 의미이며, 10은 10자리를 확보하고 4는 a에 저장된 문자열 "What's this" 중 앞의 4글자만을 출력하라는 의미이므로 결과는 뒤에 5칼 공백이 생깁니다.

두번째 답도 비슷하게 앞의 4글자만 출력하고 마지막 6칸 공백이 생기는 방식으로 설정되었습니다.

 

 

 

 

 

 

 

 

 

 

 

 

다음 Python으로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.

 

 

1
2
3
4
5
i, hap = 10
while i <= 6:
    hap += i
    i += 2
print(f"i={i}, hap={hap}")
cs

 

 

더보기

i=7, hap=9

 

 

i가 6보다 작거나 같은 동안 반복 수행을 하게 됩니다.

i가 6보다 커지면 반복문을 벗어나 출력하게 됩니다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

다음 Python으로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.

 

 

1
2
3
4
5
6
7
8
= [[1,1,0,1,0],
     [1,0,1,0]]
tot,totsu = 00
for i in a:
    for j in i:
        tot += j
    totsu = totsu + len(i)
print(totsu, tot)
cs

 

 

더보기

9 5

 

2차원 리스트가 a 변수에 선언이 됩니다.

 

a만큼 반복하면서,

 

i의 요소만큼 반복 수행하게 됩니다.

 

각 요소를 j에 할당하면서 j를  tot에 누적시킵니다.

 

각 행의 요소의 수, 즉 길이를 totsu에 넣고 출력하게 됩니다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

다음 Python 코드는 "30, 200"을 출력한다. 빈 칸 ( 1 ), ( 2 )에 알맞는 코드를 차례로 쓰시오.

 

 

1
2
3
4
5
6
7
8
9
10
11
12
(  1  ) Calculator:
    (   2   ) add(self,x,y):
        return x + y
    (   2   ) mul(self,x,y):
        return x * y
 
cal = Calculator()
= cal.add(10,20)
= cal.mul(10,20)
 
print(x, y)
 
cs

 

 

더보기

class, def

 

 

Python에서 클래스는 class로, 함수는 def라는 키워드로 선언합니다.

 

 

 

 

 

 

 

 

 

 

다음은 파이선으로 작성된 프로그램이다. 이를 실행한 출력 결과를 쓰시오.

 

 

1
2
3
4
5
6
7
lol = [[1,2,3],[4,5],[6,7,8,9]]
print(lol[0])
print(lol[2][1])
for sub in lol :
    for item in sub :
        print(item, end  = " ")
    print()
cs

 

 

더보기

[1,2,3]

7

1 2 3

4 5

6 7 8 9

 

 

lol의 [0] 인덱스 값 출력하고 1줄 내립니다.

 

lol의 [2][1] 인덱스 값 출력하고 1줄 내립니다.

 

lol의 값을 순차적으로 가져와서 sub에 넣고, 

 

sub의 값을 순처적으로 가져와서 item에 넣습니다.

 

item 출력하고 스페이스를 구분 및 개행하여 출력시킵니다.

 

 

 

 

클릭하면 해당 페이지로 이동됩니다.
시험일정 2024년 정보처리기사 시험 일정 정보
2023년 정보처리기사 시험 일정 정보
기출문제 2023년 3회 정보처리기사 실기 기출문제
2023년 2회 정보처리기사 실기 기출문제
2023년 1회 정보처리기사 실기 기출문제
2022년 3회 정보처리기사 실기 기출문제
2022년 2회 정보처리기사 실기 기출문제
2022년 1회 정보처리기사 실기 기출문제
2021년 3회 정보처리기사 실기 기출문제
2021년 2회 정보처리기사 실기 기출문제
2021년 1회 정보처리기사 실기 기출문제
2020년 4회 정보처리기사 실기 기출문제
2020년 3회 정보처리기사 실기 기출문제
2020년 2회 정보처리기사 실기 기출문제
2020년 1회 정보처리기사 실기 기출문제
정리&요약 [2020년 ~] 정보처리기사 실기 족보 1탄 (정리)
[2020년 ~] 정보처리기사 실기 족보 2탄 (정리)
[2020년 ~] 정보처리기사 실기 족보 3탄 (요약)
정보처리기사 실기 공부 방법 (꿀팁)
정보처리기사 실기 쉽게 이해하는 방법 (스토리텔링)
프로그래밍 언어 문제 정보처리기사 실기 Python편
정보처리기사 실기 Java편
정보처리기사 실기 C언어편

 

 

 

 

 

 

 

 

 

반응형

댓글