上机内容:编一程序,输入m和n的值,求组合数。要求分别定义求阶乘和求组合的函数,求组合数的函数调用求阶乘的函数来实现求解
在main()函数中,负责输入输出及调用求组合数的函数。
求组合数公式:
上机目的:函数初体验
我的程序:
运行结果:
在main()函数中,负责输入输出及调用求组合数的函数。
求组合数公式:
上机目的:函数初体验
我的程序:
/*
* 程序的版权和版本声明部分:
* Copyright (c) 2013, 青岛农业大学理信学院
* All rights reserved.
* 文件名称:求组合数.cpp
* 作 者:幻影行者
* 完成日期:2013 年 8 月 2 日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:
* 输入描述:输入m和n的值
* 问题描述:编一程序,输入m和n的值,求组合数。要求分别定义求阶乘和求组合的函数,求组合数的函数调用求阶乘的函数来实现求解,
* 在main()函数中,负责输入输出及调用求组合数的函数。
* 程序输出:输出组合数
* 问题分析:略
* 算法设计:略
*/
#include<iostream>
using namespace std;
long factorial(int); //函数声明部分
long combination(int,int);
int main()
{
int m=1,n=1;
do
{
cout<<"请输入m和n值(m>=n): ";
cin>>m>>n;
cout<<m<<","<<n<<"组合数的值为:"<<combination(m,n)<<endl; //求组合数函数调用
}while(1);
return 0;
}
long factorial(int x) //定义求阶乘的函数
{
long sum=1;
for(int i=1;i<=x;++i)
{
sum*=i;
}
return sum;
}
long combination(int m,int n) //定义求组合数的函数
{
long c;
c=factorial(n)*factorial(m-n); //技巧:只使用c变量,避免大量使用变量,节省内存空间
c=factorial(m)/c;
return c;
}
运行结果:

本文介绍了一个简单的程序设计案例,旨在通过输入两个整数m和n,计算它们的组合数,并分别定义了求阶乘和求组合数的函数。程序演示了如何在main函数中进行输入输出操作,以及如何调用这些自定义函数来解决组合数问题。

2万+

被折叠的 条评论
为什么被折叠?



