Week2-8. Fibonacci sequence(피보나치 수열), Grouping sequence(군수열)
#예제: 피보나치 수열에서 n항의 값과 n항까지의 합을 출력하는 프로그램 코드
inputN = int(input('N th : '))
valueAn = 0
sumN = 0
valuePreN2 = 0
valuePreN1 = 0
fibonacci = [] #list 생성
n = 1
while n <= inputN:
if n == 1 :
valueAn = 0
fibonacci.append(valueAn)
sumN += valueAn
valuePreN2 = 0
valuePreN1 = 0
n += 1
if n == 2:
valueAn = 1
fibonacci.append(valueAn)
sumN += valueAn
valuePreN2 = 0
valuePreN1 = 1
n += 1
else:
valueAn = (valuePreN1 + valuePreN2) #피보나치수열 일반항
fibonacci.append(valueAn)
sumN += valueAn
valuePreN2 = valuePreN1 #n-1번째 항의 n-2번째 항이 된다.
valuePreN1 = valueAn #n번째 항이 n-1번째 항이 된다.
n += 1
print('Fibonacci sequence upto {} : {}'.format(inputN,fibonacci))
print('Sum of Fibonacci sequence upto {} : {}'.format(inputN,sumN))
#예제: 군수열{1/1,1/2,2/1,1/3,2/2,3/1,1/4,2/3,3/2,4/1,....}을 n번째 항까지 출력하는 코
inputN = int(input('N th : '))
group = 1 #군
n = 1 #항
#### groupSeq = [] #군수열 list 생성
while n <= inputN:
for i in range(1, group+1): #군의 순서만큼 반복한다.
groupSeq.append(str('{}/{}'.format(i,group -i + 1)))
n += 1
group += 1
print('Group sequence : {}'.format(groupSeq))