1. 반복의 횟수를 미리 지정할 수 있는 경우 또는 범위를 알고 있는 경우에는 ( for문 )을, 그렇지 않고 반복의 횟수를 조건식에 의존하는 경우에는 ( while문 )을 사용한다.
2. 다음 프로그램 중 잘못된 부분을 찾아보자.
count = 1
while count<=10:
sum = sum + count
count = count + 1
: 변수 sum을 초기화해주지 않았다. sum=0을 while문 앞에 추가해준다.
3. 다음의 요구사항에 따라 프로그램을 작성해보자. (요구사항 생략)
sum = 0
i = 1
for i in range(11):
sum += i
print(sum) #55
4. 다음의 요구사항에 따라 프로그램을 작성해보자. (요구사항 생략)
i = 10
for i in range(i, 20):
if i%2==1:
print(i,'is a odd number')
5. 다음의 요구사항에 따라 프로그램을 작성해보자. (요구사항 생략)
i = 1
for i in range(i, 6):
j = 1
while(j<=i):
print('*', end='')
j += 1
print()
6. 다음의 요구사항에 따라 프로그램을 작성해보자. (요구사항 생략)
i = 1
while(i <= 10):
print('나무를',i,'번 찍었다.')
i+=1
print('나무가 넘어갔다.')
7. 다음의 요구사항에 따라 프로그램을 작성해보자. (요구사항 생략)
num = int(input('Enter the number(1~30) : '))
for num in range(num, 31, 2):
print(num)
#이것도 문제 이상ㅎ..ㅐ..
#요구사항은 30까지 모든 정수라면서 출력은 왜..? 일단 테스트 결과대로 코드 작성함
8. 다음의 요구사항에 따라 프로그램을 작성해보자. (요구사항 생략)
i = 1
while(i<=8):
print('계단을',i,'칸 올라갔습니다.')
i+=1
print('다음 층에 도착했습니다.')
9. 다음의 요구사항에 따라 프로그램을 작성해보자. (요구사항 생략)
num = int(input('1 이상의 정수 입력 : '))
print(num,'의 약수')
for i in range(1, num+1):
if (num%i == 0) :
print(i)
10. 다음의 요구사항에 따라 프로그램을 작성해보자. (요구사항 생략)
total = 0
while(True):
num = int(input('더하고 싶은 양의 정수를 입력하세요. '))
total += num
if num==0:
break
print('총 합은',total,'입니다.')
11. 다음의 요구사항에 따라 프로그램을 작성해보자. (요구사항 생략)
students = []
i=0
while(i<6):
print('학생의 점수를 입력하세요(',i+1,') ')
score = int(input())
students.append(score)
i += 1
print('**50점을 넘어야 합격**')
i=0
for student in students:
if student >= 50:
print(i,'번째 학생은 통과입니다.')
else:
print(i,'번째 학생은 불합격입니다.')
i += 1;
12. 다음의 요구사항에 따라 프로그램을 작성해보자. (요구사항 생략)
# 책의 요구사항과 테스트 결과가 다름. 문제가 잘못됨.
13. 다음의 요구사항에 따라 프로그램을 작성해보자. (요구사항 생략)
a= [(1,3), (3,5), (7,5), (13,15)]
for i in a:
print(i[0]+i[1])
14. 다음의 요구사항에 따라 프로그램을 작성해보자. (요구사항 생략)
list = ['strawberry', 'apple', 'banana', 'watermelon', 'grape']
for i in list[::-1]:
print(i,' ', end='')
15. 다음의 요구사항에 따라 프로그램을 작성해보자. (요구사항 생략)
while(True):
num = int(input('Enter the number : '))
if num == 0:
print('EXIT')
break
if num%2==0:
print(num,'is even number')
else:
print(num, 'is odd number')
16. 다음의 요구사항에 따라 프로그램을 작성해보자. (요구사항 생략)
while(True):
num = int(input('Enter the number : '))
if num==0:
print('EXIT')
break;
for i in range(2,num):
if num%i == 0:
print(num,'은 소수가 아닙니다.')
break;
if i==num-1:
print(num,'은 소수입니다.')
17. 다음의 요구사항에 따라 프로그램을 작성해보자. (요구사항 생략)
num = int(input('자연수 입력: '))
result = 0
for i in range(0, num+1, 2):
result += i
print(result)
18. 다음의 요구사항에 따라 프로그램을 작성해보자. (요구사항 생략)
num = int(input('자연수 입력: '))
result = 0
for i in range(1, num+1, 2):
result += i
print(result)
19. 2단부터 9단까지 구구단을 출력하는 프로그램을 작성해보자.
#for문
for i in range(1, 9):
print(i,'단 : ', end='')
for j in range(1, 9):
print(i*j, ' ', end='')
print()
#while문
i=1
while(i<10):
j=1
print(i,'단 : ', end='')
while(j<10):
print(i*j, ' ', end='')
j += 1
i += 1
print()
20. 다음의 요구사항에 따라 프로그램을 작성해보자. (요구사항 생략)
k = 0
for i in range(1, 6):
for j in range(1, i+k+1):
print('*', end='')
k += 1
print('\n\n')
21. 다음의 요구사항에 따라 프로그램을 작성해보자. (요구사항 생략)
name = input('이름 : ')
pro = int(input('문제 개수 : '))
count = 0
print('**********************')
for i in range(pro):
solve = input('문제를 해결했나요?(y/n) : ')
if solve=='y':
count += 1
print('**********************')
print(name,'학생, 총 ',count,'문제를 해결했습니다.')
22. 다음의 요구사항에 따라 프로그램을 작성해보자. (요구사항 생략)
height = float(input('높이를 입력하세요(m) : '))
count = 0
while(True):
height = height * 0.5
count += 1
print(height)
if height<0.00001:
break
print('공이 튀긴 횟수는', count-1,'입니다.')
'문제풀이 > 창의적 프로그래밍을 위한 파이썬' 카테고리의 다른 글
[창의적 프로그래밍을 위한 파이썬] 10장 연습문제 (0) | 2021.06.08 |
---|---|
[창의적 프로그래밍을 위한 파이썬] 8장 연습문제 (0) | 2021.05.23 |
[창의적 프로그래밍을 위한 파이썬] 7장 연습문제 (1) | 2021.04.30 |
[창의적 프로그래밍을 위한 파이썬] 6장 연습문제 (1) | 2021.04.21 |
[창의적 프로그래밍을 위한 파이썬] 5장 연습문제 (2) | 2021.04.20 |
댓글