Day23. 기초 수학 (4)

Junghwan Park·2023년 5월 9일
0

스터디노트

목록 보기
24/54

등비 수열

  • 비가 같은 수열!
    연속된 두 항의 비가 일정한 수열
    2 6 18 54 162 486 1458 4374
    3 3 3 3 3 3 3 공비(r)
    => 두 항의 비가 3인 등비 수열

등비 수열 규칙성을 이용해서 일반항을 구할 수 있다.


2 6 18 54 162 486 1458 4374


an / a1 = 3^(n-1) => an = a1 * r^(n-1)

  • 등비 중항


    2 6 18 54 162 486 1458


    an-1 * an+1 = an^2
  • 등비 수열의 합


    규칙성을 이용해서 모든 항들의 총합을 구할 수 있다.


    sn = (a1 r^0) + (a1 r^0) + (a1 r^0) + ... + (a1 r^(n-2)) + (a1 r^(n-1)) # r의 0승부터 시작했으므로 끝항은 n-1
    r
    sn = (a1 r^1) + (a1 r^1) + (a1 r^1) + ... + (a1 r^(n-1))) + (a1 + r^(n)) # 위의 식에 r을 전부 곱해준다


    => 위에서 아래를 빼주자!


    => (1-r)sn = (a r^0) - (a1 r^(n)) => sn = (a1 r^0) - (a1 r^n) / (1 - r)
    sn => a1 * (1 - (r^n)) / (1 - r)
  • 실습1
    다음 수열의 일반항을 구해보자.


    2 4 8 16 32 64
    an = a1 r^(n-1)
    an = 2
    2^(n-1)


    5 15 45 135 405 1215
    an = a1 r^(n-1)
    an = 5
    3^(n-1)
  • 실습2
    다음 수열에서 a2과 a6의 등비중항을 구해보자.


    2 4 8 ? 32 64
    (an-1 an+1) = an^2
    (4
    64) = an^2
    16 = an


    5 15 45 ? 405 1215
    (an-1 an+1) = an^2
    (45
    405 = an^2)
    135 = an
  • 실습3
    다음 수열의 합을 구해보자.


    2 4 8 16 32 64
    sn = a1 (1 - r^n) / (1 - r)
    2
    (1 - (2^6)) / 1 - 2
    126


    5 15 45 135 405 1215
    sn = a1 (1 - r^n) / (1 - r)
    5
    (1 - (3^6)) / (1 - 3)
    1820

등비 수열(파이썬) (01)

  • 다음 수열을 보고 n번째 항의 값을 출력하는 프로그램을 만들어보자.
    an = {2, 4, 8, 16, 32, 64, 128, 256, ...}
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))

[공식을 사용한 코딩]
an = a1 * r^(n-1)

inputN1 = int(input('a1 입력 : '))
inputR = int(input('공비 입력 : '))
inputN = int(input('n 입력 : '))

valueN = 0

# an = a1 * r^(n-1)
valueN = inputN1 * (inputR ** (inputN -1))
print('{}번째 항의 값 : {}'.format(inputN, valueN))

등비 수열(파이썬) (02)

  • 다음 수열을 보고 n번째 항까지의 합을 출력하는 프로그램을 만들어보자.
    an = {5, 15, 45, 135, 405, 1215, 3645, ... }
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))

[공식을 사용한 코딩]
등비 수열(합) 공식 : sn = a1 * (1 - r^n) / (1 - r)

inputN1 = int(input('a1 입력 : '))
inputR = int(input('공비 입력 : '))
inputN = int(input('n 입력 : '))

valueN = 0
sumN = 0

# 등비 수열(합) 공식 : sn = a1 * (1 - r^n) / (1 - r)
sumN = inputN1 * (1 - (inputR ** inputN)) / (1 - inputR)


print('{}번째 항까지의 합 : {}'.format(inputN, int(sumN)))

이 글은 제로베이스 데이터 취업 스쿨의 강의자료 일부를 발췌하여 작성되었습니다.

profile
안녕하세요 반갑습니다^^

0개의 댓글