상세 컨텐츠

본문 제목

9_제어문(반복문)

Python/1.파이썬 문법

by 일동일동 2023. 2. 23. 09:13

본문

728x90
반응형
#무한 루프
while True:
  print('안녕 파이썬!')

1. 반복문

1-1. 대입 연산자

  • =, +=, -=, *=, /=, %=
  • 왼쪽에 저장된 값과 오른쪽에 값을 연산한 뒤, 다시 왼쪽에 대입
  •  
num = 10
num += 1    # num = num + 1
print(num)

num -= 1
print(num)

num *= 10
print(num)

num /= 10
print(num)

num %= 2
print(num)

11

10

100

10.0

0.0

 

1-2. while 문

1-2. while 문
 
while 조건식:
    조건식이 True인 동안 반복할 문장
 
 
#무한 루프
while True:
  print('안녕 파이썬!')
 
i = 1
while i <= 5:
    print('안녕 파이썬!')
    i += 1

안녕 파이썬!

안녕 파이썬!

안녕 파이썬!

안녕 파이썬!

안녕 파이썬!

 

print('현재 i의 값: {}'.format(i))

현재 i의 값: 6

 

# 1 ~ 100 까지의 합
i = 1
sum = 0

while i <= 100:
    sum += i
    i += 1

print('1부터 100까지의 합 : {}'.format(sum))

1부터 100까지의 합 : 5050

 

문제

input 함수로 원하는 단을 입력받아 구구단을 출력하는 프로그램을 작성해보자

 

# 원하는 단을 입력하세요 5
# 5단
# 5 * 1 = 5
# 5 * 2 = 10
# ...
# 5 * 9 = 45
 
dan = int(input('원하는 단을 입력하세요'))
print('{}단'.format(dan))

i = 1

while i <= 9:
  print('{} * {} = {}'.format(dan, i, dan*i))
  i += 1

원하는 단을 입력하세요4

4단

4 * 1 = 4

4 * 2 = 8

4 * 3 = 12

4 * 4 = 16

4 * 5 = 20

4 * 6 = 24

4 * 7 = 28

4 * 8 = 32

4 * 9 = 36

 

1-3. for 문

1-3. for 문
 
for 변수 in 객체(범위):
    반복할 문장
# range(): 범위를 생성하는 함수
# range(시작인덱스, 종료값 +1 인덱스, 증가값)

num = range(0, 10, 1)
print(num)

range(0, 10)

 

for i in num:
  print(i, end = ' ')

0 1 2 3 4 5 6 7 8 9

for i in range(0, 10, 1):
    print(i, end=' ')

0 1 2 3 4 5 6 7 8 9

for i in range(10): # 시작인덱스 : 0 (기본값), 증가값: 1(기본값)
    print(i, end=' ')

0 1 2 3 4 5 6 7 8 9

for i in range(0, 10): # 증가값: 1(기본값)
    print(i, end=' ')

0 1 2 3 4 5 6 7 8 9

 

문제

위 for 문을 이용하여 1~ 100까지의 짝수의 총합을 구하는 프로그램을 작성해보자

sum = 0

for i in range(1, 101):

  if i % 2 == 0:
    sum += i

print('1부터 100까지의 짝수 총합: {}'.format(sum))

1부터 100까지의 짝수 총합: 2550

 

2. list를 for문과 함께 사용하기

li = ['apple', 'banana', 'orange', 'melon']

for i in li:
    print(i, end=' ')

apple banana orange melon

 

문제

score 리스트에 저장된 점수가 60점 이상인 학생이 몇명인지 알아보는 프로그램을 작성해보자

  • score = [90, 30, 50, 60, 80, 70, 100, 40, 20, 10]
score = [90, 30, 50, 60, 80, 70, 100, 40, 20, 10]
count = 0

for i in score:
    if i >= 60:
        count += 1

print('60점 이상인 학생의 수는 총 {}명 입니다'.format(count))

60점 이상인 학생의 수는 총 5명 입니다

 

3. 다중 반복문

for i in range(1, 4):
  print('현재 i: {}'.format(i))
  for j in range(1, 4):
      print('🍍현재 j: {}'.format(j))

현재 i: 1

🍍현재 j: 1

🍍현재 j: 2

🍍현재 j: 3

현재 i: 2

🍍현재 j: 1

🍍현재 j: 2

🍍현재 j: 3

현재 i: 3

🍍현재 j: 1

🍍현재 j: 2

🍍현재 j: 3

 

문제

  • 2단부터 9단까지 구구단을 출력하는 프로그램을 for문과 while문으로 각각 작성해보자
i = 2
j = 1

while i <= 9:
  print('{}단'.format(i))
  while j <= 9:
    print('{} * {} = {}'.format(i, j, i*j))
    j += 1
  i += 1
  j = 1   # j가 9이상으로 갔기 때문에 while 멈춤. j=1로 리셋시켜줘야 9까지 돌수 있음
  print()

2단

2 * 1 = 2

2 * 2 = 4

2 * 3 = 6

2 * 4 = 8

2 * 5 = 10

2 * 6 = 12

2 * 7 = 14

2 * 8 = 16

2 * 9 = 18

 

...

-

3단 ~ 9 단 반복

-

반응형

'Python > 1.파이썬 문법' 카테고리의 다른 글

11_기본정렬  (0) 2023.02.23
10_딕셔너리  (0) 2023.02.23
8_제어문(조건문)  (1) 2023.02.19
7_해쉬 테이블  (0) 2023.02.19
6_리스트  (0) 2023.02.19

관련글 더보기