워드클라우드 py파일 만드는 김에 순열조합도 코딩했음.
순열: nPr(n개의 원소 중 r개를 중복 없이 늘어놓는 가짓수)
조합: nCr(n개의 원소 중 r개를 픽할 때의 가짓수)
# permutation(순열): 서로 다른 n개의 원소 중 r개를 중복 없이 늘어놓는 것
def factorial(a):
factorial = 1
for i in range(1,a+1):
factorial = factorial * i
return factorial
# 순열에 팩토리얼이 들어가서 어쩔 수 없어요...
# nPr(서로 다른 n개의 원소 중 r개를 중복 없이 늫어놓는 것)을 구하는 공식은 n!/(n-r)!입니다.
n = int(input("n에 들어가는 수를 입력해주세요: "))
r = int(input("r에 들어가는 수를 입력해주세요: "))
P = factorial(n) / factorial(n - r)
print("{}개의 원소 중 {}개를 중복 없이 늘어놓을 수 있는 가짓수의 계산 결과는 {}입니다. ".format(n,r,int(P)))
이게 순열이고
# n개의 원소 중 r개를 택하는 것이 조합입니다. nCr로 표기합니다.
def factorial(a):
factorial = 1
for i in range(1,a+1):
factorial = factorial * i
return factorial
# 아 얘는 조합 구하는데 순열이 필요해서 어쩔 수 없음.
# nCr을 구하는 공식은 n!/r!(n-r)!입니다.
n = int(input("n에 들어가는 수를 입력해주세요: "))
r = int(input("r에 들어가는 수를 입력해주세요: "))
bunmo = factorial(r) * factorial(n - r)
C = factorial(n)/bunmo
print(C)
이게 조합임다.
'Coding > Python' 카테고리의 다른 글
팩토리얼 로직 또 수정 (0) | 2022.08.22 |
---|---|
팩토리얼 로직 수정+계승 소수 (0) | 2022.08.22 |
워드클라우드 코드에 기능 추가 (0) | 2022.08.22 |
List comprehension (0) | 2022.08.22 |
완전수 찾는 코드 (0) | 2022.08.22 |