- 반복구조 예제 및 문제2026년 04월 09일
- 소쩍소쩍이
- 작성자
- 2026.04.09.:36
# 예제18 - while 반목문 사용해 숫자 1~10까지 출력 i = 1 while i <= 10 : print(i) i += 11 2 3 4 5 6 7 8 9 10# 예제19 - for 반복문 사용해 숫자 1~10까지 출력 for i in range(1,10+1,1) : print(i)1 2 3 4 5 6 7 8 9 10# 예제 20 - 반복문 사용해 10~1 까지 출력 i = 10 while i >= 1 : print(i) i -= 110 9 8 7 6 5 4 3 2 1# 예제21 - 숫자 1부터 100까지 합 i = 1 sum = 0 while i <= 100 : sum += i i += 1 print(sum)5050# 예제22 - 1~100까지의 수 중 짝수의 합 구하기 i = 2 sum = 0 while i <= 100 : sum += i i += 2 print(sum)2550# 예제23 - ~100까지의 수 중 짝수의 합 구하기(나누기) i = 1 sum = 0 for i in range(1,100+1,1): i += 1 if i % 2 == 0 : sum += i print(sum)2550# 예제24 - 1~100까지 홀수는 더하고 짝수는 빼기 i = 1 sum = 0 for i in range(1,100+1,1) : i += 1 if i % 2 == 0: sum += i else : sum -= i print(sum)-50# 예제25 - 계승 구하기 fact = 1 n = 5 for i in range(n,0,-1): fact *= i print(fact)120# 예제26 - 약수 구하기 n = int(input("정수 :")) for i in range(1,n+1,1): if n % i == 0: print(i)정수 :5 1 5# 예제27 - 공약수 구하기 n1 = int(input()) n2 = int(input()) for i in range(1,n1+1,1): if n1 % i == 0 and n2 % i == 0: print(i)12 16 1 2 4# 예제28 - 최대 공약수 구하기 n1 = int(input()) n2 = int(input()) list_a = [] for i in range(n1,1,-1): if n1 % i == 0 and n2 % i == 0 : list_a.append(i) print(list_a[0])12 16 4# 예제29 - 소수 판별하기 n1 = int(input("정수 : ")) list_b = [] for i in range(1,n1+1,1): if n1 % i == 0 : list_b.append(i) if len(list_b) == 2 : print(n1,"은 소수임") else : print(n1,"은 소수가 아님")정수 : 12 12 은 소수가 아님# 예제30 - 피보나치 수열 list_c = [1,1] # 임의의 list생성 i = 0 # 위치 sum = 0 while i < 18: sum = list_c[i]+list_c[i+1] # 0항과 1 항 더하기 list_c.append(sum) # 계산된 결과값 넣기 i += 1 # 항 넘어가기 print(list_c)[1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765]# 예제31 - 쵀댓값 구하기 max =0 i = 0 while i <= 7 : a = int(input("정수 :")) if max < a : max = a i += 1 print("최댓값 :", max)정수 :12 정수 :15 정수 :56 정수 :866 정수 :85 정수 :44 정수 :32 정수 :22 최댓값 : 866# 예제32 - 직각 삼각형 모양으로 수 출력하기 output = "" for i in range(1,5+1,1) : for j in range(1,i+1,1) : output += str(j) output += "\n" print(output)1 12 123 1234 12345# 예제33 - 1~10까지 정수에 대한 약수 구하기 for i in range(1,10+1,1): print("{}의 약수 : ".format(i), end=" ") for j in range(1,i+1,1): if i % j == 0 : print(j,end=" ") print()1의 약수 : 1 2의 약수 : 1 2 3의 약수 : 1 3 4의 약수 : 1 2 4 5의 약수 : 1 5 6의 약수 : 1 2 3 6 7의 약수 : 1 7 8의 약수 : 1 2 4 8 9의 약수 : 1 3 9 10의 약수 : 1 2 5 10# 예제34 - 2~100까지의 소수 구하기 for i in range(2,100+1,1): chk = True for j in range(2,i,1): if i % j == 0: chk = False break if chk == True : print(i,end=" ")2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97# 에제35 - 누적합의 누적합을 계산하는 문제 a = 0 b = 0 for i in range(1,10+1,1): a = i + a b = a + b print(b)220# 예제36 - 구구단 for i in range(2,9+1,1): for j in range(1,9+1,1): num = i*j print(i,"X",j,"=",num,end=" ") print()2 X 1 = 2 2 X 2 = 4 2 X 3 = 6 2 X 4 = 8 2 X 5 = 10 2 X 6 = 12 2 X 7 = 14 2 X 8 = 16 2 X 9 = 18 3 X 1 = 3 3 X 2 = 6 3 X 3 = 9 3 X 4 = 12 3 X 5 = 15 3 X 6 = 18 3 X 7 = 21 3 X 8 = 24 3 X 9 = 27 4 X 1 = 4 4 X 2 = 8 4 X 3 = 12 4 X 4 = 16 4 X 5 = 20 4 X 6 = 24 4 X 7 = 28 4 X 8 = 32 4 X 9 = 36 5 X 1 = 5 5 X 2 = 10 5 X 3 = 15 5 X 4 = 20 5 X 5 = 25 5 X 6 = 30 5 X 7 = 35 5 X 8 = 40 5 X 9 = 45 6 X 1 = 6 6 X 2 = 12 6 X 3 = 18 6 X 4 = 24 6 X 5 = 30 6 X 6 = 36 6 X 7 = 42 6 X 8 = 48 6 X 9 = 54 7 X 1 = 7 7 X 2 = 14 7 X 3 = 21 7 X 4 = 28 7 X 5 = 35 7 X 6 = 42 7 X 7 = 49 7 X 8 = 56 7 X 9 = 63 8 X 1 = 8 8 X 2 = 16 8 X 3 = 24 8 X 4 = 32 8 X 5 = 40 8 X 6 = 48 8 X 7 = 56 8 X 8 = 64 8 X 9 = 72 9 X 1 = 9 9 X 2 = 18 9 X 3 = 27 9 X 4 = 36 9 X 5 = 45 9 X 6 = 54 9 X 7 = 63 9 X 8 = 72 9 X 9 = 81# 연습문제 - 평균점수 구하기 A = [70,60,55,75,95,90,80,80,85,100] total = 0 for score in A : total = total + score avr = total // 10 print(avr) i = 0 total = 0 while i < len(A): total = total + A[i] i = i + 1 average = total // len(A) print(average)79 79# 과제12 - 5~15까지 출력하는 while문 i = 4 while i < 15 : i = i+1 print(i)5 6 7 8 9 10 11 12 13 14 15# 과제14 - 5~15까지 출력하는 for문 for i in range(5,15+1,1): print(i)5 6 7 8 9 10 11 12 13 14 15# 과제15 - while을 이용해 10~1 까지 출력 i = 11 while i > 1: i = i-1 print(i)10 9 8 7 6 5 4 3 2 1# 과제16 1부터 입력받은 수 까지의 합을 출력 num = int(input("정수를 입력하세요 > ")) total = 0 for i in range(0,num+1,1): total = total + i print(total)정수를 입력하세요 > 10 55# 과제17 - 1~100 중 3의 배수의 합을 출력 sum = 0 for i in range(3,100+1,3): sum = sum+i print(sum)1683# 과제18 - 1~100 중 3의 배수의 합을 출력 sum = 0 for i in range(1,100+1,1): if i % 3 == 0: sum = i +sum print(sum)1683# 과제19 - 1~100의 합 중 3의 배수만 빼고 출력 sum = 0 for i in range(1,100+1,1): if i%3==0 : sum = sum-i else : sum = sum+i print(sum)1684# 과제20 - 입력받은 수의 약수와 약수의 개수 출력 num = int(input("정수 :")) a = [] for i in range(1,num+1,1): if num % i == 0: a.append(i) print(i,end=" ") print(":",len(a))정수 :30 1 2 3 5 6 10 15 30 : 8# 과제 21 - 세 수의 공약수를 출력 num1 = int(input("정수 : ")) num2 = int(input("정수 : ")) num3 = int(input("정수 : ")) for i in range(1,num1+1,1): if num1 % i == 0 and num2 % i == 0 and num3 % i == 0: print(i)정수 : 400 정수 : 300 정수 : 256 1 2 4# 과제22 - 1부터 자기자신까지 소수를 판별 n1 = int(input("정수 : ")) list_b = [] for i in range(1,n1+1,1): if n1 % i == 0 : list_b.append(i) if len(list_b) == 2 : print(n1,"은 소수임") else : print(n1,"은 소수가 아님")정수 : 45 45 은 소수가 아님# 과제23 -파보나치수열의 20번째 항까지의 합 list_g = [1,1] # 임의의 list생성 i = 0 # 위치 ple = 0 while i < 18: ple = list_g[i]+list_g[i+1] # 0항과 1 항 더하기 list_g.append(ple) # 계산된 결과값 넣기 i += 1 # 항 넘어가기 print(list_g) total = sum(list_g) print(total)[1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765] 17710# 과제24 - 0을 입력하기 전까지 입력값을 받아 최소를 구하고 0 이 입력되면 출력 hig = None while True : number = int(input("정수 :")) if number == 0: break if hig is None or hig > number : hig = number print("최솟값 : ",hig)정수 :2 정수 :4 정수 :6 정수 :9 정수 :5 정수 :0 최솟값 : 2# 과제25(1) - 숫자 피라미드 for i in range(1,5+1,1): # 1 2 3 4 5 for j in range(1,i+1,1): print(i, end="") print()1 22 333 4444 55555# 과제25(2) - 숫자 피라미드 for i in range(5,0,-1): for j in range(1,i+1,1): print(j, end="") print()12345 1234 123 12 1# 과제25(3) - 숫자 피라미드 for i in range(5,0,-1): for j in range(i, 0, -1): print(j, end="") print()54321 4321 321 21 1# 과제26 - 1~5 팩토리얼 합을 출력 n = 1 sum = 0 for i in range(1,5+1,1): n =n*i sum = sum +n print(sum)153# 과제27 - 구구단 변형 for j in range(1,9+1,1): for i in range(2,9+1,1): print(i,"*",j,"=",j*i,end=" ") print()2 * 1 = 2 3 * 1 = 3 4 * 1 = 4 5 * 1 = 5 6 * 1 = 6 7 * 1 = 7 8 * 1 = 8 9 * 1 = 9 2 * 2 = 4 3 * 2 = 6 4 * 2 = 8 5 * 2 = 10 6 * 2 = 12 7 * 2 = 14 8 * 2 = 16 9 * 2 = 18 2 * 3 = 6 3 * 3 = 9 4 * 3 = 12 5 * 3 = 15 6 * 3 = 18 7 * 3 = 21 8 * 3 = 24 9 * 3 = 27 2 * 4 = 8 3 * 4 = 12 4 * 4 = 16 5 * 4 = 20 6 * 4 = 24 7 * 4 = 28 8 * 4 = 32 9 * 4 = 36 2 * 5 = 10 3 * 5 = 15 4 * 5 = 20 5 * 5 = 25 6 * 5 = 30 7 * 5 = 35 8 * 5 = 40 9 * 5 = 45 2 * 6 = 12 3 * 6 = 18 4 * 6 = 24 5 * 6 = 30 6 * 6 = 36 7 * 6 = 42 8 * 6 = 48 9 * 6 = 54 2 * 7 = 14 3 * 7 = 21 4 * 7 = 28 5 * 7 = 35 6 * 7 = 42 7 * 7 = 49 8 * 7 = 56 9 * 7 = 63 2 * 8 = 16 3 * 8 = 24 4 * 8 = 32 5 * 8 = 40 6 * 8 = 48 7 * 8 = 56 8 * 8 = 64 9 * 8 = 72 2 * 9 = 18 3 * 9 = 27 4 * 9 = 36 5 * 9 = 45 6 * 9 = 54 7 * 9 = 63 8 * 9 = 72 9 * 9 = 81
반복구조 예제 및 문제 순서도 '파이썬 > 문제 및 예제' 카테고리의 다른 글
간단한 프로그램 만들기 1 (계산기) (0) 2026.04.16 함수 예제 및 문제 (0) 2026.04.13 리스트 예제 및 문제 (0) 2026.04.10 선택구조 예제 및 문제 (0) 2026.04.07 순차구조 문제 및 예제 (0) 2026.04.07 다음글이전글이전 글이 없습니다.댓글
스킨 업데이트 안내
현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)