ホームページ  >  記事  >  バックエンド開発  >  nCr と nPr を見つけるための C プログラム

nCr と nPr を見つけるための C プログラム

WBOY
WBOY転載
2023-08-28 23:05:121027ブラウズ

nCr と nPr を見つけるための C プログラム

C プログラミング言語では、nCrcombination と呼ばれます。 nCr は、n 個のオブジェクトのコレクションから r 個のオブジェクトを選択します。オブジェクトの順序は重要ではありません。

nPr配置 と呼ばれます。 nPr は、順序またはシーケンスに配置される必要がある「n」個のオブジェクトのセットからの「r」個のオブジェクトの配置です。

順列と組み合わせの公式

C 言語での順列と指定された数値の組み合わせの公式は次のとおりです。

  • nCr = n!/(r! *( n-r)!)
  • nPr = n!/(n-r)!.

nCr を見つけるロジックは次のとおりです-

result = factorial(n)/(factorial(r)*factorial(n-r));

find nPr は次のとおりです-

result = factorial(n)/factorial(n-r);

Example

次は、指定された数値の順列と組み合わせを見つけるための C プログラムです。-

#include <stdio.h>
long factorial(int);
long find_ncr(int, int);
long find_npr(int, int);
int main(){
   int n, r;
   long ncr, npr;
   printf("Enter the value of n and r</p><p>");
   scanf("%d%d",&n,&r);
   ncr = find_ncr(n, r);
   npr = find_npr(n, r);
   printf("%dC%d = %ld</p><p>", n, r, ncr);
   printf("%dP%d = %ld</p><p>", n, r, npr);
   return 0;
}
long find_ncr(int n, int r) {
   long result;
   result = factorial(n)/(factorial(r)*factorial(n-r));
   return result;
}
long find_npr(int n, int r) {
   long result;
   result = factorial(n)/factorial(n-r);
   return result;
}
long factorial(int n) {
   int c;
   long result = 1;
   for (c = 1; c <= n; c++)
   result = result*c;
   return result;
}

Output

When上記のプログラムを実行すると、以下が生成されます。 Output-

Enter the value of n and r
5 2
5C2 = 10
5P2 = 20

以上がnCr と nPr を見つけるための C プログラムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。