등차수열이란?
앞과 뒤의 두 항의 차이가 일정한 수열을 말합니다.
11,14,17...
은 두 항의 차이(공차)가 3으로 일정한 등차 수열입니다.
이러한 등차 수열에서
n번째 항의 값 = 초항 + (n-1) * (공차)
예를 들어 1 부터 시작하는 공차 1인 수열이라면 1,2,3,... 과 같이 진행 되는데 10번째 항의 값을 구하려면 초항 1의 9번째 뒤의 값이므로 (10-1)번째 * 공차(1) 을 더해 주면 10이라는 수를 구할 수 있습니다.
등차수열의 합은 (초항 + n번째 항의값) * n(개) / 2로 확인을 할 수 있는데 이 공식은
가우스가 초등학교 3학년때 1부터 100까지의 수를 더하라는 선생님의 문제에 1과 100을 짝짓기 해서 50개를 만들어서 곱셈으로 풀었다는 그 유명한 공식입니다.
오늘은 이러한 등차수열 문제를 파이썬을 활용해서 문제를 풀어 보도록 하겠습니다.
문제
N을 입력 받아서 첫번째 항이 3이고 공차가 5 인 등차수열을 차례대로 계산하여 N번째 등차 수열을 구해 보고 N번째 항의 값의 공식으로 문제를 해결하여 두가지가 동일한지 판단을 해 보도록 하겠습니다.
코드
초항 = 3
공차 = 5
N=int(input('알고싶은 N번째는 :'))
N번째값 = 초항
for i in range(1,N): #1부터 N-1회를 반복한다. i가 1일때 두번째 항이기 때문에
N번째값 += 공차
print('반복문으로 계산한값:',N번째값)
#공식으로 추출한값
print('공식으로 계산한값:',초항 + 공차 *(N-1))
문제
N을 입력 받아서 첫번째 항이 3이고 공차가 5 인 등차수열을 차례대로 계산하여 N번째 까지의 합을 구해 보고 등차수열의 합을 이용해서 문제를 해결하여 두가지가 동일한지 판단을 해 보겠습니다.
코드
초항 = 3
공차 = 5
N=int(input('알고싶은 N번째는 :'))
합 = 0
변하는값=초항
for i in range(N): #첫항 부터 N번째 항까지의 합을 구하자.
합 += 변하는값
변하는값+=공차
print('반복문으로 계산한값:',합)
N번째값 = 초항 + 공차 *(N-1)
#공식으로 추출한값
print('공식으로 계산한값:',(초항 + N번째값) * N / 2 )
코드로 확인을 해 보니 반복문의 값과 공식의 값이 모두 동일한 값을 출력하는 것을 확인 할 수 있었네요~
'강의자료 > 인공지능수학' 카테고리의 다른 글
[인공지능수학] 표준점수 (18) | 2023.01.27 |
---|---|
[인공지능수학] 호도법/도수법 실습하기 (20) | 2023.01.20 |
[인공지능수학] 함수의 개념 실습하기 (7) | 2022.12.16 |
[인공지능 수학] 주성분 분석 (6) | 2022.11.09 |
[인공지능수학]MNIST (7) | 2022.10.31 |