📗 11일차 공부 내용 요약
[기초수학과 파이썬]
1.등비수열 : 등비수열의 개념과 공식을 배워, 파이썬으로 구현해보았다.
2. 시그마 : 시그마에 대해 알아보고, 수열을 파이썬으로 구현해보았다.
3. 계차수열 : 계차수열에 대해 알아보고, 파이썬으로 구현해보았다
4. 피보나치수열 : 피보나치수열에 대해 알아보고, 파이썬으로 구현해보았다
5. 군수열 : 군수열에 대해 알아보고, 파이썬으로 구현해보았다
📖 11일차 공부 내용 자세히
1. 등비수열
- 연속된 두 항의 비가 일정한 수열
- an = a1 * r^(n-1)
- sn = a1 * (1-(r^n))/(1-r)
- 등차중앙 a(n-1) * a(n+1) = an^2
등비수열 : n번째 항의 값 구하기
#반복문 활용
inputN1 = int(input('a1 입력 : '))
inputR = int(input('공비 입력 : '))
inputN = int(input('n 입력:'))
valueN = 0
n = 1
while n <= inputN :
if n == 1:
valueN = inputN1
print('{}번째 항의 값: {}'.format(n, valueN))
n += 1
continue
valueN *= inputR
print('{}번째 항의 값: {}'.format(n, valueN))
n += 1
print('{}번째 항의 값: {}'.format(inputN, valueN))
#공식 활용
inputN1 = int(input('a1 입력 : '))
inputR = int(input('공비 입력 : '))
inputN = int(input('n 입력:'))
valueN = inputN1 * (inputR ** (inputN - 1))
print('{}번째 항의 값: {}'.format(inputN, valueN))
등비수열 : n번째 항까지의 합 구하기
#반복문 활용
inputN1 = int(input('a1 입력 : '))
inputR = int(input('공비 입력 : '))
inputN = int(input('n 입력:'))
valueN = 0
sumN = 0
n = 1
while n <= inputN :
if n == 1:
valueN = inputN1
sumN += valueN
print('{}번째 항까지의 합: {}'.format(n, sumN))
n += 1
continue
valueN *= inputR
sumN += valueN
print('{}번째 항까지의 합: {}'.format(n, sumN))
n += 1
print('{}번째 항까지의 합: {}'.format(inputN, sumN))
#공식활용
inputN1 = int(input('a1 입력 : '))
inputR = int(input('공비 입력 : '))
inputN = int(input('n 입력:'))
sumN = inputN1 * (1 - (inputR ** inputN)) / (1-inputR)
print('{}번째 항까지의 합: {}'.format(inputN, int(sumN)))
2. 시그마
- Σ(시그마)란, 수열의 합을 나타내는 기호이다
3. 계차수열
- 어떤 수열의 인접하는 두 항의 차로 이루어진 또 다른 수열
계차수열 : n번째 항의 값 구하기
# an = {3, 7, 13, 21, 31, 43, 57}
# bn = {4, 6, 8, 10, 12, 14}
#반복문
inputAN1 = int(input('a1 입력 : '))
inputAN = int(input('an 입력 : '))
inputBN1 = int(input('b1입력 : '))
inputBD = int(input('bn 공차 입력 : '))
valueAN = 0
valueBN = 0
n = 1
while n <= inputAN :
if n == 1:
valueAN = inputAN1
valueBN = inputBN1
print('an의 {}번째 항의 값 : {}'.format(n,valueAN))
print('bn의 {}번째 항의 값 : {}'.format(n,valueBN))
n += 1
continue
valueAN += valueBN
valueBN += inputBD
print('an의 {}번째 항의 값 : {}'.format(n,valueAN))
print('bn의 {}번째 항의 값 : {}'.format(n,valueBN))
n += 1
print('an의 {}번째 항의 값 : {}'.format(inputAN, valueAN))
print('bn의 {}번째 항의 값 : {}'.format(inputAN, valueBN))
#공식활용
#n^2 + n + 1 =an
valueAN = inputAN ** 2 + inputAN + 1
print('an의 {}번째 항의 값 : {}'.format(inputAN, valueAN))
4. 피보나치 수열
- 세 번째 항은 두 번째 항과 첫 번재 항을 더한 합이다
피보나치 수열 : n번째 항의 값 구하기
inputN = int(input('n 입력 : '))
valueN = 0 # n번째 항의 값
sumN = 0 # n번째 항까지의 합
valuePreN2 = 0 # n-2번째 항의 값
valuePreN1 = 0 # n-1번째 항의 값
n = 1
while n <= inputN :
if n == 1 or n == 2:
valueN = 1
valuePreN2 = valueN
valuePreN1 = valueN
sumN += valueN
n += 1
else:
valueN = valuePreN2 + valuePreN1
valuePreN2 = valuePreN1
valuePreN1 = valueN
sumN += valueN
n +=1
print('{}번째 항의 값 : {}'.format(inputN, valueN))
print('{}번째 항까지의 합 : {}'.format(inputN, sumN))
5.팩토리얼
- 1부터 양의 정수 n까지의 정수를 모두 곱한 것
- 0! 은 1로 약속한다
팩토리얼 : n! 구하기
inputN = int(input('n 입력 : '))
#반복문 이용(for)
result = 1
for n in range(1, inputN+1):
result *= n
print('{}팩토리얼 = {}'.format(inputN,result))
#반복문 이용(while)
result = 1
n = 1
while n <= inputN:
result *= n
n += 1
print('{}팩토리얼 = {}'.format(inputN,result))
#재귀함수
def factorialFun(n):
if n == 1: return 1
return n * factorialFun(n-1)
print('{}팩토리얼 = {}'.format(inputN,factorialFun(inputN)))
#math 모듈
import math
print('{}팩토리얼 = {}'.format(inputN,math.factorial(inputN)))
6.군수열
- 여러 개의 항을 묶었을 때 규칙성을 가지는 수열
군수열 : n항의 값 구하기
#1, 1, 2, 1, 2, 3, 1, 2, 3, 4, 1, 2, 3, 4, 5, ...
inputN = int(input(('n항 입력 : ')))
flag = True
n = 1 #n 군
nCnt = 1 #총 항 개수
searchN = 0 #찾고자 하는 n항의 값
while flag :
for i in range(1, n+1): #n군 안에서의 수열
print('{} '.format(i),end = '')
nCnt += 1
if nCnt > inputN:
searchN = i
flag = False
break
print()
n += 1
print('{}번째 항의 값 : {}'.format(inputN, searchN))
➰ 11일차 후기
오늘은 2주차 후기를 적는 날이니까 짧게!
기초수학에서 배운 내용 들이 나중에 어떻게 활용될 지 궁금했다!
※본 내용은 제로베이스 데이터 취업 스쿨에서 제공하는 학습 내용에 기반합니다.
'제로베이스 데이터 스쿨 > 일일 스터디 노트' 카테고리의 다른 글
13일차 스터디노트 / 파이썬 자료구조, 리스트 자료형의 활용 (1) | 2023.01.17 |
---|---|
12일차 스터디노트 / 기초수학 순열, 조합, 확률, 연습문제 풀이 + 파이썬 / 제로베이스 데이터 취업 스쿨 (0) | 2023.01.16 |
10일차 스터디노트 / 기초수학 약수와 소수, 최소공배수와 최소공약수, 진법, 등차수열 + 파이썬 / 제로베이스 데이터 취업스쿨 (1) | 2023.01.14 |
9일차 스터디노트 / 파이썬 예외, 텍스트 파일 연습문제 풀이 / 제로베이스 데이터 취업스쿨 (0) | 2023.01.14 |
8일차 스터디노트 / 파이썬 모듈, 클래스 연습문제 풀이 / 제로베이스 데이터 취업 스쿨 (0) | 2023.01.12 |