用VB.NET编写一个程序 :编一求阶乘的函数f(n),主调程序求组合数的程序,分别调用f(n),用来计算组合数的值

用VB.NET编写一个程序 :编一求阶乘的函数f(n),主调程序求组合数的程序,分别调用f(n),用来计算组合数的值,第1张

Private Sub Command1_Click()

Dim A, B, C

A = 10

B = 3

C = f(A) / (f(B) f(A - B))

Print C

End Sub

Private Function f(n)

Dim I As Integer

f = 1

For I = 1 To n

f = f I

Next I

End Function

main()

{

int m;

int n;

int k;

scanf("%d%d",&m,&n);

if (m>n)

{

k=combinNum(m,n);

printf(""%d\n",k);

}

if (m==n)

{

k=combinNum(m,n);

printf(""%d\n",k);

}

if (m<n)

{

combinNum(m,n);

printf(""%d\n",k);

}

double combinNum(int m,int n)

{

double x;

int y;

y=m-n;

x=facto(m)/(facto(n)facto(y));

return x;

}

int facto(int x)

{

if (x==1)

return 1;

else

return (x facto(x-1));

}

}

这是第一题的程序,第二题是要你自己做的,自己运行测试。

第三题的话,把后面两个自定义函数放入一个文件比如ac。在主函数文件中加入#include ac即可。

如果n个物品用于组合,在一个组合中,第i个物品有0和1两个情况,0表示不在组合中,1表示在组合中。这个组合可以表示为n位二进制数。考虑到每个物品都可能取0和1,这就是一个连续的二进制数。你所说的next_combination函数是让一个组合对应的二进制数加一,直到n位二进制数全为1为止。

#include "stdioh"

int factorial(int t) //阶乘计算函数 ,返回t的阶乘

{

if(t==0||t==1) return 1;

return tfactorial(t-1);

}

int cmn(int n,int m)

{

return factorial(n)/(factorial(m)factorial(n-m)) ;//组合数计算公式

}

void YangHuiTriAngOut(int n)

{

int i,j;

printf("\n");

for(i=0;i<n;i++)//共有n行输出

{

for(j=0;j<=i;j++)//每行输出j个数据

{

printf("%d\t", cmn(i,j) );

}

printf("\n");

}

}

void main(void)

{

YangHuiTriAngOut(7);

}

1、组合:计算从给定数目的对象集合中提取若干对象的组合数。利用函数 COMBIN 可以确定一组对象所有可能的组合数。

语法:COMBIN(number,number_chosen)

Number 项目的数量。

Number_chosen 每一组合中项目的数量。

比如:从9个数字球中,随机抽3个球,共有多少种组合,在excel任一单元格输入“=COMBIN(9,3)”,回车。结果就会得到。84种

2、排列:返回从给定数目的对象集合中选取的若干对象的排列数。排列为有内部顺序的对象或事件的任意集合或子集。排列与组合不同,组合的内部顺序无意义。此函数可用于**抽奖的概率计算。

语法:PERMUT(number,number_chosen)

Number 表示对象个数的整数。

Number_chosen 表示每个排列中对象个数的整数。

比如:从9个同学,随机抽3个同学,排列为一列,共有多少个排列方式,在excel任一单元格输入“=PERMUT(9,3)”,回车。结果就会得到。504种

以上就是关于用VB.NET编写一个程序 :编一求阶乘的函数f(n),主调程序求组合数的程序,分别调用f(n),用来计算组合数的值全部的内容,包括:用VB.NET编写一个程序 :编一求阶乘的函数f(n),主调程序求组合数的程序,分别调用f(n),用来计算组合数的值、C语言编程、跪求一个C++的组合数函数next_combination等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10173847.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存