23-1학기 기말고사 복기본
1번 객관식
다음 파이썬 명령어 중 반복 명령을 수행하는 것을 모두 고르면?
1. if문
2. for문
3. while문
4. print문
2번 객관식
다음 코드 실행 결과를 옳게 기술한 것은?
while True:
print(“Hello”)
break
1. 코드 오류가 발생한다.
2. print(“Hello”)는 무한 번 실행된다.
3. print(“Hello”)는 한 번도 실행되지 않는다.
4. print(“Hello”)는 한 번만 실행된다.
3번 객관식
def문에 관한 설명으로 옳지 않은 것만을 모두 고르시오.
1. 매개변수가 필수적으로 동반된다.
2. 같은 코드의 반복을 줄이기 위해 사용된다.
3. 함수를 미리 선언하지 않아도 정의된 함수를 호출해도 된다.
4. 출력할 값이 없는 경우, return은 사용할 필요 없다.
4번 객관식
다음 코드 실행 결과를 옳게 기술한 것은?
num = 0
while num < 10:
num = num+2
print(num)
1. 2 4 6 8
2. 2 4 6 8 10
3. 2 4 6 8 10 12
5번 객관식
list = []
for x in range(0, 3):
for y in range(0, x):
list.append("*")
print(list)
이때 코드 실행값은?
1. ['*', '*', '*']
2. ['*', '*', '*', '*', '*']
3. ['*']
['**']
['***']
4. ['*', '**', '***']
6번 객관식
다음과 같은 출력을 원할 때, 오류가 나는 부분을 모두 고르시오.
<코드 설계>
students = (
“student1” : 85,
“student2” : 80,
(1)
“student3” : 79,
“student4” : 60
)
# () : 튜플, {} : 딕셔너리
for i in students.keys()
(2)
score = student[i]
# for문에 : 없음
if score >= 80:
(3)
student[i] = ‘Excellent’
elif score < 80:
student[i] = ‘Not Bad’
for i in students.items():
(4)
print(“%s : %s” % i , student[i] )
# print(“%s : %s” % i , student[i] )이 아니라 print(“%s : %s” % ( i , student[i] ) ).
<원하는 출력>
student1 : Excellent
student2 : Excellent
student3 : Not Bad
student4 : Not Bad
7번 객관식
def AddWorker(name, exp=0):
workers[name] = exp
workers = {}
AddWorker("신입1")
AddWorker("신입1", 2)
AddWorker("신입5", 2)
AddWorker("신입5")
for i in workers.items():
print("[이름] %s" % i[0])
print("[경력] %d년" % i[1])
이때 코드 실행값은?
1. [이름] 신입1
[경력] 0년
[이름] 신입1
[경력] 2년
[이름] 신입5
[경력] 2년
[이름] 신입5
[경력] 0년
2. [이름] 신입1
[경력] 2년
[이름] 신입5
[경력] 0년
3. [이름] 신입1
[경력] 0년
[이름] 신입5
[경력] 0년
22-2학기 기말고사 복기본
1번 객관식
num = 0
while num < 10:
num = num+2
print(num)
이때 코드 실행값은?
1. 2 4 6
2. 2 4 6 8
3. 2 4 6 8 10
4. 2 4 6 8 10 12
2번 객관식
list = []
for i in range(0,3):
for j in range(0,i):
list.append("*")
print(list)
이때 코드 실행값은?
1. ['*', '*', '*']
2. ['*', '*', '*', '*', '*']
3. ['*']
['**']
['***']
4. ['*', '**', '***']
3번 객관식
다음 코드 중 틀린 부분을 전부 고르시오. (코드는 잘 기억이 안 나서 틀린 부분을 작성함)
(A) dictionary 인데 괄호를 {}안 쓰고 []씀
(B) for 문 썼는데 : 안 씀 즉,
for i in range(3,6)
print(i)
이 형태로 씀
(C) 틀린 부분 없었음
(D) 정확히 코드가 기억 안 나는데
print((%s학생, %s입니다. % '김홍익', '점수는 10점입니다') 이런 식이었음
즉, % 뒤에 '김홍익' '점수는 10점입니다'를 괄호로 묶어줘야 하는데 괄호 없어서 틀렸다
4번 객관식
def AddWorker(name, exp=0):
workers[name] = exp
workers = {}
AddWorker("신입1")
AddWorker("신입1", 2)
AddWorker("신입5", 2)
AddWorker("신입5")
for i in workers.items():
print("[이름] %s / [경력] %d년" % (i[0], i[1]))
이때 코드 실행값은?
1. [이름] 신입1 / [경력] 0년
[이름] 신입1 / [경력] 2년
[이름] 신입5 / [경력] 2년
[이름] 신입5 / [경력] 0년
2. [이름] 신입1 / [경력] 2년
[이름] 신입5 / [경력] 0년
3. [이름] 신입1 / [경력] 0년
[이름] 신입5 / [경력] 2년
5번 논술형
인공지능의 발달로 인해 많은 산업군이 빠르게 변하고 있다. 이때 본인의 진로와 관련된 분야에서는 어
떠한 부분이 달라질 것인지 쓰고, 어떻게 대비할 수 있는지를 작성하시오.
22-1학기 기말고사 복기본
1번 객관식
list=[]
for i in range(0,3):
for e in range(0,2):
list.append("*")
일때 코드 결과는?
a번/ [*,*,*,*,*,*]
b번/ ['*','*','*','*','*','*']
c번/ [*,*,*,*,*,*,*,*,*,*,*,*,*,*,*,*]
d번/ ['*','*','*','*','*','*','*','*','*','*','*','*','*','*','*','*']
2번 객관식
13주차 예제2 : 하루 권장 섭취량 계산기
코드랑 결과값주고 for i in (
) 자리에 뭐가 와야 하는가?
a번/ foods:
b번/ foods.items():
c번/ foods.values.():
d번/ foods.keys():
3번 주관식
에러가 나는 줄을 모두 찾아내고 어떻게 바꿔야 하는지 쓰시오.
#1
ramen = none
#2
ramen= {'신라면' : 1500, '진라면' : '1800', "열라면" : 2000, '왕뚜껑' : 2500}
#3
cost_sum = ramen[0] + ramen[1]
#4
print(ramen['짬뽕'])
정답
#1 None
#2 없음. '',"" 둘 다 상관없고 '1800'이어도 에러는 안뜸
#3 cost_sum=int( ramen['신라면'] ) + int( ramen['진라면'] ) int로 정수화가 필요하고 딕셔너리의
value값을 불러오려면 저렇게 써줘야 한다. 딕셔너리에서 ramen[0]처럼 쓰면 key값, value값 모두
호출되지 않는다.
#4 짬뽕은 딕셔너리 목록에 없으므로 에러가 난다. 신라면 진라면 등으로 써줘야 한다.
4번 주관식
12주차 예제10 : 숫자 정렬
numbers = [27,54,11,98,61]
rev_numbers = sorted(numbers, reverse=True)
print(rev_numbers)
print(rev_numbers[2:3])
코드 결과값을 수기로 적으시오.
정답 [98,61,54,27,11] / [54]
5번 서술형
현재 하늘에 떠 있는 비행기의 갯수를 추론하시오.
나의 답 : 남반구 대륙3개, 북반구 대륙6개 가정. 북반구 비행기가 2배 많을것.
공항 하나에 동서남북 4군데 활주로를 동시 사용 가능하다고 가정.
비행기 한대가 뜨고 다음 비행기가 뜰 때까지 소요시간은 30분으로 가정.
남반구 호주대륙에서 나머지 두 대륙으로 이동하는데 소요시간을 24/3=8시간으로 가정.
호주에서 나머지 8대륙으로 출반한다고 가정.
한 대륙에 공항은 평균 100개라고 가정.
따라서, 30분에 4대, 1시간에 8대, 8시간에 64대 이므로 답은 64 * 8 * 100 * 9(9는 대륙수9개)
21-2학기 시험문제 종류 및 팁
코드 예제들 공부하기
예제 그대로 따라쳐보기
그대로 혹은 변형
코드 빈칸채우기
객관식
1강은 시험에 안나옴
객관식 2문제
서술형 3문제 > 이게 코딩문제
논술형 1문제(그냥 점수주는거 or 이게 맨홀문제인듯)
2주지각 / 과제100줄 / 기말 80점 a0
문제1)
none > None으로 대문자로 바꿔주기
문제2)
a는 파이썬은 print 출력하면 자동 줄바꿈 있음 + (0, 0), (0, 1), (0, 2) 하면 총 3번 작업함
세 번째 줄 #3 인덱스 넣는 건 리스트고 저건 딕셔너리라 key값 넣어야함
세 번째 줄 #3 하신 분도 price 더할 때 int type 변환 안하면 에러남
오징어 짬뽕이 라멘 딕셔너리 키값으로 존재 안 해서 에러남. ramen['오징어짬뽕']=1700 같이
key:value 넣지 않으면 에러남
value에는 정수, 문자열, 불리안, float 어떤 게 들어와도 상관없음. 활용할 때 type convert가 문제.
21-1학기 시험문제 종류 및 팁
문제당 배점 큼
4문제
문제1. 코딩 주고 틀린 부분 고치기(답 여러개 가능) / 서술 ex) true > True 등
문제2, 3. 코딩 주고 결괏값 맞추기 or 역으로 / 4지 선다, 객관식
문제4. 제시된 조건 보고 순서도 그리기
11-14주차에 예제 14개정도 쏟아지는데 시험은 예제에 비해 쉽다
마지막은 서술형 제주도의 맨홀 갯수를 컴퓨팅사고를 이용하여 추론하라
코딩 명령어의 원리와 과정 이해하기
중간과제 3장 / 70줄 / 기말 2문제(반타작) a+
예제들 모두 이해하고 새롭게 적용할 수 있으면 맞출 수 있음
문제1)
엘베 작동 순서도 그리기
문제2)
true > True 대문자로 바꾸기
문제3)
e/3 을 e%3으로 바꾸기
문제4) elif가 아니라 else
참고) 에브리타임 문제복기 댓글 모음
2번째 for 문에만 *를 출력하는 프린트문이 적용돼서, 1번째 포문은 그냥 레인지값으로 0.1.2 입력하게
해주는 역할만 하고, 출력되는 데 관여하는 포문은 2번째 것만
for i in range(0, 3) 할 때는 0, 1, 2라고 생각
그 다음이 for j in range(0, i)면은
0, 1, 2개의 숫자니까
for j in range(0,3) 이랑 같은말
i가 0, 1, 2일 때 분류해서 풀어도 결과는 같음
그렇게 되면 for j in range(0,3) 을 프린트 한 거라서 답이 그렇게 나옴
22-1학기 시험문제 종류 및 팁
객관식 프로그래밍 문제 3~4개
11~14강 3번째 예제들 변형(예제 코드 00선 시리즈)
서술형 문제 / 프로그래밍 융복합 문제 1~2개
컴퓨팅사고 및 이와 연계한 프로그래밍 문제
컴프 공부요령)
int나 *갯수나 keys. 모두 미리 주의 안 했으면 남들처럼 실수해서 틀렸을 수도 있음.
참고하기)
세로셈 곱셈 예제
줄 맞춤 해주는 거 %5d라고 쓰면 5개로 정렬
가령 123을 출력하면 '
123', 45를 출력하면 '
참고하기2) a+=1은 a=a+1이랑 같은 것
45' 이런 식
22-2학기 중간고사 에브리타임