혼공파 35 ~ 37강
1. 범위와 반복문
# 범위
# 특정한 범위 내부의 정수들을 나열하는 자료형
# (1) range(A)
# 0부터 A까지의 정수를 범위로 나
# A는 포함하지 않음
# (2) range(A, B)
# A부터 B까지의 정수를 범위로 나열
# B는 포함하지 않음
# range(A, B, C)
# A부터 B까지의 정수를 범위로 나열
# B는 포함하지 않음
# C만큼씩 건너뛰면서 범위를 생성
print(list(range(5))) # [0, 1, 2, 3, 4]
print(list(range(10, 15))) # [10, 11, 12, 13, 14]
print(list(range(0, 20, 3))) # [0, 3, 6, 9, 12, 15, 18]
for i in range(10):
print(f"{i}번째입니다!")
# 매개변수를 1개 넣는 경우 : 특정 횟수만큼 반복하는 경우
for i in range(10):
print("반복입니다")
for _ in range(10): # _ 를 사용하는 경우가 종종 있음
print("반복입니다")
# 매개변수를 2개 넣는 경우 : 반복 변수를 사용하는 경우
for i in range(0, 10):
print(f"{i} 번째입니다!")
# 매개변수를 3개 넣는 경우 : 반대로 반복하는 경우
for i in range(10, -1, -1):
print(f"{i} 번째입니다")
2. 등차수열, 점화식, 피보나치 수열
# 등차 수열
n = 100
a_n = 2 * n - 1
print(a_n)
a = [None] # 수학의 인덱스와 프로그래밍 인덱스를 맞춰주기 위해 None
for n in range(1, 100 + 1): # 100번째까지 출력하는 것을 강조
a_n = 2 * n - 1
a.append(a_n)
print(a)
# a_1 = 1
# a_2 = 3
# a[0] = 1
# a[1] = 3
# 점화식 : 이전 항을 기반으로 다음 항을 만드는 방법
# 프로그래밍에서는 동적계획법이라고 한다.
# a_n = a_n-1 + 2
# a1 = 1
for n in range(1, 10 + 1):
if n == 1:
a_n = 1
else:
a_n = a[n-1] + 2
a.append(a_n)
print(a)
# 특정 길이의 리스트 만들기
# 처음에 특정 길이의 리스트를 만드는 것이 append로 계속 리스트 길이가 늘어나는 것보다 빠르다
# [None] * 100
N = 100
a = [None] * (N + 1)
for n in range (1, N + 1):
if n == 1:
a[1] = 1
else:
a[n] = a[n-1] + 2
print(a)
# 피보나치 수열
N = 100
a = [None] * (N + 1)
for n in range (1, N + 1):
if n == 1 or n == 2:
a[n] = 1
else:
a[n] = a[n-1] + a[n-2]
print(a)
3. 온라인저지 여러 줄 입력
# 여러줄 입력 받기
N = 10
for n in range(N):
input()
# 백준 문제 10950
T = int(input())
for n in range(T):
a = input().split()
a_0 = int(a[0])
a_1 = int(a[1])
print(a_0 + a_1)
'Base > Python' 카테고리의 다른 글
10. 리스트와 딕셔너리 관련 기본 함수 / 리스트 내포 / join함수 (1) | 2023.02.20 |
---|---|
9. reversed() 함수 / while 반복문 / break / continue 키워드 (0) | 2023.02.18 |
7. 딕셔너리와 반복문 (0) | 2023.02.15 |
6. for 반복문과 리스트, 항등원, 전개 연산자 (0) | 2023.02.11 |
5. 수열/배열/리스트 (0) | 2023.02.09 |
댓글