반복적이고 지루한 작업은 컴퓨터를 이용하여 자동화하여야 한다. 동일한 작업을 오류 없이 반복하는 것은 컴퓨터가 아주 잘 할 수 있는 일이다.
문법적으로 if문과 유사
어떤 조건이 만족되는 동안, 반복을 계속하는 구조
특정 회수 만큼 반복도 가능

n = 10
while n<20:
print("Hello")
n=1
while n<=3:
print("Hello")
n+=1
total=0
num=-999
count = 0
while num!=0:
num = int(input("정수 입력(0 입력 시 프로그램 종료): "))
total = total + num
count += 1
print(f"총합: {total}")
if count>1:
print(f"평균: {total/(count-1)}")
##string = ""
##while string != "exit":
## string = input("문장입력:")
## print(string,len(string)) # len() 문자열의 길이를 알 수 있다.
string = ""
while True:
string = input("문장입력:")
if string == "exit":
break
print(string,len(string))
total=0
count = 0
while True:
num = int(input("정수 입력(0 입력 시 프로그램 종료): "))
if num == 0:
break
total = total + num
count += 1
print(f"총합: {total}")
if count>1:
print(f"평균: {total/count}")
정해진 회수만큼 반복하는 구조

순서를 나타내는 자료형들
리스트, 문자열, 튜플(tuple), range함수

for문의 반복for n in [10,"A",30,3.14,999]:
print("Hello",n)
abc = [1,2,3,4]
for m in abc:
print("World",m)
range() 함수세 가지 형태의 range() 함수
for m in range(5): # [0.1.2.3.4]
print("World",m)
for m in range(0,5): # [0.1.2.3.4]
print("World",m)
for n in range(3,8): # [3.4.5.6.7]
print("Hello",n)
for x in range(3,9,2): # [3,5,7]
print("Good",x)
for z in range(10,1,-1):
print(z, end=" ")
print()
print("Hello")
print("Hello")
print("Hello")
print("Hello")
print("Hello") # Hello * 5
# 1. 무한루프
n = 10
while n<20:
print("n은 20보다 작다")
# 2. 특정 회수 만큼 반복
n = 1 # 시작값
while n<=3: # 조건 : 끝값
print("Hello")
n += 1 # 증감
# 예제 1
n = 1
hap = 0
while n<=100:
hap+=n
n = n+1
print("1~100합 =",hap)
# 예제 2
n = 1
hap = 0
while n<=100:
if n%3 == 0:
hap+=n
n = n+1
print("1~100 3의 배수의 합 =",hap)
# 3. 회수가 정해지지 않은 반복
total=0
num=-999
count = 0
while num!=0:
num = int(input("정수 입력(0 입력 시 프로그램 종료): "))
total = total + num
count += 1
print(f"총합: {total}")
if count>1:
print(f"평균: {total/(count-1)}")
string = ""
while string != "exit":
string = input("문장입력:")
print(string,len(string)) # len() 문자열의 길이를 알 수 있다.
# 1 -> 3 으로 바꾸기
string = ""
while True:
string = input("문장입력:")
if string == "exit":
break
print(string,len(string))
total=0
count = 0
while True:
num = int(input("정수 입력(0 입력 시 프로그램 종료): "))
if num == 0:
break
total = total + num
count += 1
print(f"총합: {total}")
if count>1:
print(f"평균: {total/count}")
print("** 합 구하기 **")
stnum = int(input("시작점: "))
endnum = int(input("끝점: "))
num = stnum
hap = 0
while num <= endnum:
hap+=num
num+=1
print(f"{stnum}부터 {endnum}까지의 합은 : {hap}")
import random
num = random.randint(1,20)
print("** 숫자 맞추기 게임 **")
print("컴퓨터가 1~20 중 하나를 선택")
print("당신이 맞추세요")
while True:
usernum = int(input("당신이 생각하는 숫자는?"))
if usernum > num:
print(f"틀렸습니다. {usernum}보다 작은 수 입니다.")
elif usernum < num:
print(f"틀렸습니다. {usernum}보다 큰 수 입니다.")
else:
print("축하합니다. 정답입니다.")
break
for n in [10,"A",30,3.14,999]:
print("Hello",n)
abc = [1,2,3,4]
for m in abc:
print("World",m)
for m in range(5): # [0.1.2.3.4]
print("World",m)
for m in range(0,5): # [0.1.2.3.4]
print("World",m)
for n in range(3,8): # [3.4.5.6.7]
print("Hello",n)
for x in range(3,9,2): # [3,5,7]
print("Good",x)
for x in range(5,10):
print(x, end=" ")
print()
for y in range(5,10,2):
print(y, end=" ")
print()
for z in range(10,1,-1):
print(z, end=" ")
print()
# 걍 참고
print(list(range(5)))
n = int(input("1~n 까지의 합을 구할 거임. n값: "))
hap = 0
for x in range(1,n+1):
hap = hap + x
print("1~%d 까지의 합 = %d"%(n, hap))
m = int(input("1~m 까지의 곱을 구할 거임. m값: "))
gop = 1
for x in range(1,n+1):
gop = gop * x
print("1~%d 까지의 곱 = %d"%(n, gop))
print("** 순차 합을 구하는 프로그램 **")
stnum = int(input("어디서부터의 합을 구할까요? "))
endnum = int(input("어디까지의 합을 구할까요? "))
result = 0
for x in range(stnum, endnum+1):
result += x
print(f"{stnum}부터 {endnum}까지의 합은 {result}입니다.")
print("** 간단한 구구단 프로그램 **")
n = int(input("몇 단을 할까요? "))
m = int(input("몇 까지 곱셈을 할까요?"))
for i in range(m):
print(f"{n} * {i+1} = {n*(i+1)}",end="")
if i<m-1:
print(",",end =" ")
else:
print()
##dan = int(input("몇 단?"))
##num = int(input("몇까지 곱셈?"))
##
##for i in range(1,m+1):
## print("%d * %d = %d"%(dan,i,dan*i),end="")
## if i!=num:
## print(", ",end="")
##
##print()
# 다섯개마다 줄 바꾸기
print("** 간단한 구구단 프로그램 **")
n = int(input("몇 단을 할까요? "))
m = int(input("몇 까지 곱셈을 할까요?"))
for i in range(m):
print(f"{n} * {i+1} = {n*(i+1)}",end="")
if (i+1)%5==0:
print()
elif i<m-1:
print(",",end =" ")
else:
print()