계차수열 : 어떤 수열의 인접하는 두항의 차로 이루어진 또다른 수열

inputAn1 = int(input('a1입력 : '))
inputAn = int(input('a의 개수 : '))
inputBn1 = int(input('b1입력 : '))
inputBd = int(input('b의 공차 : '))
valueAn = 0
valueBn = 0
n = 1
while n <= inputAn :
if n == 1 :
valueAn = inputAn1
valueBn = inputBn1
#여기틀림 밑에서 할생각 말고 여기서 셋팅 해줬어여
n+= 1
continue
valueAn += valueBn #이게 먼저 나와야함
valueBn += inputBd
n+=1
print('{}번째 항 : {}'.format(inputAn,valueAn ))
inputN = int(input('n입력 : '))
valueN = 0
sumN = 0
n= 1
#계속 더해주야 하는데 뭘 더할꺼냐 - 변수만들어 누적더하기
valuePreN2 = 0
valuePreN1 = 0
while n <= inputN :
if n == 1 or n == 2 : #첫번째랑 두번째 달
valueN = 1
valuePreN2 = valueN
valuePreN1 = valueN
sumN += valueN
n+= 1
else : #여기는 왜 else 가 붙는 거지/??
valueN = valuePreN2 + valuePreN1 #피보나치 핵심
valuePreN2 = valuePreN1 #반복문이 돌기 위해 변수셋팅
valuePreN1 = valueN
sumN += valueN
n += 1
print('{}번째 항의 값 : {}'.format(inputN, valueN))
print('{}번째 항까지의 합 : {}'.format(inputN, sumN))
#1. 반복문 이용
#2. 재귀함수 이용 (기존걸 계속 곱한다 > 재귀함수 사용)
def factorialFun(n) :
if n == 1 :
return 1
return n * factorialFun(n-1) #n이 4라면 3 * 2 * 1
print('{}팩토리얼 : {}'.format(inputN, factorialFun(inputN)))
#3. math 모듈 - factorial 함수
import math
print(math.factorial(inputN))
#군수열
inputN = int(input('n항 입력: '))
flag = True
n = 1; nCnt = 1; searchN = 0 #nCnt = 찾고자하는 항 번호 / searchN = 찾고자 하는 항의 값
while flag:
#1
for i in range(1, (n + 1)):
#5 print('{} '.format(i)) #5번째 군의 마지막 수는 5
if i == n:
print('{} '.format(i), end='')
else:
print('{}, '.format(i), end='')
#3
nCnt += 1
#4
if (nCnt > inputN):
searchN = i #5번째 군의 마지막 수는 5
flag = False #while 멈추기
break #for문 멈추기
print()
#2
n += 1
print('{}항: {}'.format(inputN, searchN))


numN = int(input('numN입력 : '))
numR = int(input('numN입력 : '))
result = 1
for n in range(numN, (numN - numR), -1):
#*** range는 그 전까지 돈다. 즉 줄어들면 입력한 수보다 하나 큰 수가
즉(numN - numR + 1)까지 입력 되는 것 (+1되어 실행)
print('n : {}'.format(n))
result *= n
print('result : {}'.format(result))
#함수 이용
import itertools
arr = ['A', 'B', 'C']
nPr = itertools.permutations(arr, 2)
print(list(nPr))
결과 : [('A', 'B'), ('A', 'C'), ('B', 'A'), ('B', 'C'), ('C', 'A'), ('C', 'B')]
n = int(input(' 친구 수 입력 : '))
result = 1
#(n-1)!
for n in range(1, n): (-1되어 실행)
print('n : {}'.format(n))
result *= n
print('result : {}'.format(result))

- 실습
5개 중에서 2개 뽑는데 삼각형, 사각형이 동시에 뽑힐 확률
> 이미 순서고려 안해서 뽑았기에 굳이 나눠주지 않아도 됨
#1. 순열 파이썬 / n 팩토리얼
#2. 함수
import itertools
arr = ['A', 'B', 'C']
nCr = itertools.combinations(arr, 2)
print(list(nCr))
결과 : [('A', 'B'), ('A', 'C'), ('B', 'C')]
#함수 쓴다는 아이디어 굿!
#변수지정 안해도 아래에서 물어볼거임
def proFun(): #함수가 두가지의 값을 물어볼거임
numN = int(input('numN입력 : ')) #지역변수
numR = int(input('numR입력 : '))