POST

c언어 순열의 갯수 구하기

순열의 갯수 구하기

n개의 수중에 r개의 순열의 갯수를 출력하는것을 만들어 보자.


순열(permutation)은 서로 다른 n 개의 원소 중에서 r 개()를 뽑아서 한 줄로 세우는 경우의 수이다.

예를 들어, 네 개의 문자 A,B,C,D 에서 두 개를 뽑아 나열하는 방법은 이므로 12가지가 된다. 일일이 나열하면 다음과 같다.

A B

A C

A D

B A

B C

B D

C A

C B

C D

D A

D B

D C




#include<stdio.h>


int main(void)

{

int n, r, i, nPr = 1;


printf("n의 값 : ");

scanf_s("%d", &n);

printf("r의 값 : ");

scanf_s("%d", &r);


for (i = n; i >= (n - r + 1); i--)

nPr = nPr*i;

printf("순열의 값은 %d 입니다.\n", nPr);


}