C/C++の宿題片付けます 124代目
■ このスレッドは過去ログ倉庫に格納されています
0667デフォルトの名無しさん
2009/04/10(金) 10:32:28それで、一応ロングなら。
#include <stdio.h>
/* mからnまでの積を再帰的に計算する関数 (m<=n) */
long int factorial (int m, int n) {
if (m == n)
return m;
else
return m * factorial(m + 1, n);
}
/* nCr=n(n-1)(n-2)・・・(n-r+1)/r!*/
int main(void){
int m=0, n=0;
long int a, b;
printf("Enter M N:");
scanf("%d%d",&m,&n);
a = factorial(m-n+1, m); b = factorial(1,n);
printf("%dC%d=%ld/%ld=%ld", m, n, a, b, a/b);
puts(""); n = m - n;
a = factorial(m-n+1, m); b = factorial(1,n);
printf("%dC%d=%ld/%ld=%ld", m, n, a, b, a/b);
}
■ このスレッドは過去ログ倉庫に格納されています