# 등차수열의 합
inputA1 = int(input('a1 입력 : '))
inputD = int(input('공차 입력: '))
inputN = int(input('n 입력: '))
valueN = inputA1 + (inputN - 1) * inputD
sumN = inputN * (inputA1 + valueN) / 2
print('-' * 30)
print('{}번째 항까지의 합: {}' .format(inputN, int(sumN)))
print('-' * 30)
# 등비수열의 합
inputA1 = int(input('a1 입력 : '))
inputR = int(input('공비 입력: '))
inputN = int(input('n 입력: '))
sumN = inputA1 * (inputA1 ** inputN - 1) / ( inputR - 1)
print('-' * 30)
print('{}번째 항까지의 합: {}' .format(inputN, int(sumN)))
print('-' * 30)
팩토리얼(Factorial) : 1부터 양의 정수 까지의 정수를 모두 곱한 것
inputN = int(input('n 입력: '))
result = 1
for n in range(1, inputN + 1):
result *= n
print('{}팩토리얼 : {}' .format(inputN, result))
inputN = int(input('n 입력: '))
result = 1 ; n = 1
while n <= inputN:
result *= n
n += 1
print('{} 팩토리얼: {}' .format(inputN, result))
def factorialFun(n):
if n == 1:
return 1
return n * factorialFun(n - 1)
inputN = int(input('n 입력: '))
print('{} 팩토리얼: {}' .format(inputN, factorialFun(inputN)))
import math
inputN = int(input('n 입력: '))
print('{} 팩토리얼: {}' .format(inputN, math.factorial(inputN)))
군 수열 : 여러 개의 항을 묶었을 때 규칙성을 가지는 수열
# 조합
def proFun():
numN = int(input('numN 입력: '))
numR = int(input('numR 입력: '))
resultP = 1 ; resultR = 1 ; resultC = 1
for n in range(numN, (numN - numR), -1):
resultP *= n
print('resultP : {}' .format(resultP))
for n in range(numR, 0, -1):
resultR *= n
print('resultR : {}' .format(resultR))
resultC = int(resultP / resultR)
print('resultC : {}' .format(resultC))
return resultC
sample = proFun()
print('sample : {}' .format(sample))
event1 = proFun()
print('event1 : {}' .format(event1))
event2 = proFun()
print('event2 : {}' .format(event2))
# 확률
probability = (event1 * event2) / sample
print('probability : {}%' .format(round(probability * 100, 2)))