본문 바로가기

학교/[수업 필기] 컴퓨터 알고리즘

컴퓨터 알고리즘 4주차

챕터1 88p ~ 102p

 

1차시 기본 수열

1. 수열이란? 일정한 규칙에 따라 숫자들이 차례대로 나열한 것

2. 항이란? 수열의 각 숫자

3. 1부터 100까지 자연수의 제곱의 합을 구하려면?

핵심 : SUM = SUM + N * N

 -> SUM에 수열의 현재 항인 N의 제곱(N*N)을 누산 한다

4. 반복문에서 조건에 맞지 않아 탈출 하는 것을 bypass라고 한다

5. 디버깅 표에서 열 제목에는 변수와 조건을 작성하고, 행은 시간의 흐름에 따른 값들로 채운다.

 

2차시 등차수열 / 등비수열

1. 등차수열이란?

  - 각 항에 일정한 수를 더하여 다음항을 만든다는 규칙을 갖는다

2. 등비수열이란?

  - 각 항에 일정한 수를 곱하여 다음 항을 만든다는 규칙을 갖는다

3. S 초기화에 따른 반복 변수 n의 초기값:
    0 --> n은 1부터
   초항 --> n은 2부터

등차수열

등비수열

D는 이웃한 두 항 간의 차이로 언제나 동일한 값이고 공차라고 부름

N번째 항은 초항에 공차 D를 (N-1)번 더한 것이 됨

일반항 : AN = A1 + (N-1) x D

R은 뒤의 수를 만들기 위하여 바로 앞의 수에 곱해지는 수로 공비라고 부름

N번째 항은 초항에 공비 R의 (N-1)제곱하여 얻어짐

일반항 : AN = A1 x (N-1)^R

 

3차시 피보나치 수열 (1,1,2,3,5,8,13)

1. 앞의 2개의 항을 더한다. 첫 번째 항(A1)과 두 번째 항(A2)은 규칙을 못 지키므로 문제에서 주어진다.

     A의 N번째 값 = A의 N-1번째 값 + A의 N-2번째 값 (N>=3) 의 규칙을 가지고 있음

2. 이 피보나치 수열에 대해 100번째 항까지의 합을 구하기 위해서는 S, A, B, C, N 변수가 필요함

S : SUM

A, B, C : 피보나치 수열의 공식에 따라 항을 생성하는데 사용 / A는 첫째 항, B는 둘째 항(A와 B는 반복문을 돌면서 각각 첫째항, 둘째항 --> 둘째항 셋째항 --> 셋째항 넷째항 이렇게 이동합니다), C는 A와 B를 더해 SUM에 누적해주는 역할

N : S에 누적된 피보나치 수열 항의 개수, 알고리즘에서 피보나치 수열 항의 개수가 100개인지 점검한 후 100개가 되었으면(True) S를 출력하게 함

3. 순서도에서 n의 초기값을 2로 준 것은 현재 항의 개수를 저장하고, 3으로 주면 들어갈 항의 개수를 저장한다.