# 구구단
for i in range(2,10):
print(i,'단')
for j in range(1,10):
print(f'{i}*{j}={i*j}')
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 단
3*1=3
3*2=6
3*3=9
3*4=12
3*5=15
3*6=18
3*7=21
3*8=24
3*9=27
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
5 단
5*1=5
5*2=10
5*3=15
5*4=20
5*5=25
5*6=30
5*7=35
5*8=40
5*9=45
6 단
6*1=6
6*2=12
6*3=18
6*4=24
6*5=30
6*6=36
6*7=42
6*8=48
6*9=54
7 단
7*1=7
7*2=14
7*3=21
7*4=28
7*5=35
7*6=42
7*7=49
7*8=56
7*9=63
8 단
8*1=8
8*2=16
8*3=24
8*4=32
8*5=40
8*6=48
8*7=56
8*8=64
8*9=72
9 단
9*1=9
9*2=18
9*3=27
9*4=36
9*5=45
9*6=54
9*7=63
9*8=72
9*9=81
# 구구단 2단은 2*2, 3단은 3*3 ... 9단은 9*9 까지
# 방법1
for i in range(2,10):
print(i,'단')
for j in range(1,i+1):
print(f'{i}*{j}={i*j}')
print()
# 방법2
for i in range(2,10):
print(i,'단')
for j in range(1,10):
print(f'{i}*{j}={i*j}')
if i == ㅓ:
break # 가장 가까운 반복문 종료 명령
print()
2 단
2*1=2
2*2=4
3 단
3*1=3
3*2=6
3*3=9
4 단
4*1=4
4*2=8
4*3=12
4*4=16
5 단
5*1=5
5*2=10
5*3=15
5*4=20
5*5=25
6 단
6*1=6
6*2=12
6*3=18
6*4=24
6*5=30
6*6=36
7 단
7*1=7
7*2=14
7*3=21
7*4=28
7*5=35
7*6=42
7*7=49
8 단
8*1=8
8*2=16
8*3=24
8*4=32
8*5=40
8*6=48
8*7=56
8*8=64
9 단
9*1=9
9*2=18
9*3=27
9*4=36
9*5=45
9*6=54
9*7=63
9*8=72
9*9=81
# 피보나치 수열(fibonacci sequence)
# f[0] = 0, f[1] = 1
# f[n] = f[n-1] + f[n-2], n>=2
# 피보나치 수열로 20개짜리 리스트를 생성
seq = [0, 1]
for i in range(1,20):
seq.append(seq[i]+seq[i-1])
for j in range(len(seq)):
print(f'seq({j}): {seq[j]}')
seq(0): 0
seq(1): 1
seq(2): 1
seq(3): 2
seq(4): 3
seq(5): 5
seq(6): 8
seq(7): 13
seq(8): 21
seq(9): 34
seq(10): 55
seq(11): 89
seq(12): 144
seq(13): 233
seq(14): 377
seq(15): 610
seq(16): 987
seq(17): 1597
seq(18): 2584
seq(19): 4181
seq(20): 6765
# 소수(prime number): 1과 자기자신으로만 나누어지는 정수
# 2부터 10까지의 정수들 중에서 소수를 찾아서 출력
for n in range(2, 11):
isPrime = True
for divider in range(2, n):
if n % divider == 0:
print(f'{n} = {divider} x {n / divider}')
isPrime = False
break
if isPrime:
print(f'{n}은 소수!')
실행 결과
2은 소수!
3은 소수!
4 = 2 x 2.0
5은 소수!
6 = 2 x 3.0
7은 소수!
8 = 2 x 4.0
9 = 3 x 3.0
10 = 2 x 5.0
# for/while 반복문과 else가 함께 사용되는 경우,
# 반복문이 break를 만나지 않고 범위 전체를 반복했을 때
# else 블록이 실행
# 반복문 중간에 break를 만나면 else는 실행되지 않음.
for i in range(5):
if i == 3:
break
print(i, end='')
else:
print('반복문 종료')
실행 결과:
012
for i in range(5):
if i == 3:
continue
print(i, end='')
else:
print('반복문 종료')
실행결과:
0124반복문 종료
for i in range(5):
if i == 5:
break
print(i, end='')
else:
print('반복문 종료')
실행결과:
01234반복문 종료
# for-else 구문을 이용한 소수 찾기
for n in range(2, 11):
for divider in range(2,n):
if n% divider == 0: # 약수가 존재 -> 소수가 아님.
break
else: # break를 만나지 않았을 때 -> 소수.
print(f'{n}은 소수:')
'Python > Python기초' 카테고리의 다른 글
Python 14_ 함수1 함수의 정의 및 선언 (0) | 2019.12.09 |
---|---|
Python_ for구문을 이용해 총점, 평균, 표준편차, 최대값, 최소값 구하기 (0) | 2019.12.06 |
Python 13_ while (0) | 2019.12.04 |
Python 12_dictionary comprehension (0) | 2019.12.03 |
Python 11_ list comprehension (0) | 2019.12.02 |