-순열 : n개에서 r개를 택하여 나열하는 경우의 수 ( nPr = n(n-1)(n-2)~(n-r+1) )
ex) 8P3 = 8x7x6 or 8!/5!
순열 ( n x (n-1) x ~ x (n-r+1)로 구하는 ) 코드
numN = int(input('numN 입력 : '))
numR = int(input('numN 입력 : '))
result = 1
for n in range(numN , (numN-numR), -1):
print('n : {}'.format(n))
result = result * n
print('result : {}'.format(result))
-원순열 : 시작과 끝의 구분이 없는 순열 ( (n-1)! )
원순열 코드
n = int(input('n 입력 : '))
result = 1
for i in range(1,n):
result *= i
print('result = {}'.format(result))
-조합 ( nCr = nPr / r! = n! / r! (n-r)! )
ex) 8C3 = 8x7x6 / 3x2x1 = 56
조합 코드(nCr -> nPr / r! 공식을 사용하는 코드)
numN = int(input('numN 입력 : '))
numR = int(input('numR 입력 : '))
resultP = 1
resultR = 1
resultC = 1
for n in range(numN , (numN-numR), -1):
print('n : {}'.format(n))
resultP = resultP * n
print('resultP : {}'.format(resultP))
-확률 : 모든 사건에서 특정 사건이 일어날 수 있는 수를 나타낸 것
모든 사건 -> 표본 공간
특정 사건 -> 사건
-난수발생 코드
import random
rNum = random.randint(100,1000)
print(f'rNum: {rNum}')
-팩토리얼 ( 반복문을 사용할때 )
def factorial(n):
fac = 1
for n in range(1 , (n+1)):
fac = fac * n
return fac
num = int(input('number : '))
print(f'{num}! : {factorial(num)}')