猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
C++程序设计 C=n!/(n-m)!m!?
C++程序设计 C=n!/(n-m)!m!
浮云间
浏览 1638
回答 4
4回答
白衣非少年
因为你的fac函数里面直接用n*=i,这样n不断增大,导致i一直小于n,死循环了给你改了,代码如下,请采纳123456789101112131415161718192021222324#include<iostream> #include <cmath> using namespace std;double fac(double n,double m){ int i; int n1=1,m1=1; for(i=1;i<=n;++i) n1*=i; for(i=1;i<=m;++i) m1*=i; double nm = 1; for(i=1;i<=n-m;++i) nm*=i; double y = n1/(nm*m1); return y;}int main(){ double y = fac(3,2); cout<<y<<endl; system("pause"); return 0;}你不是要算组合数?分母中应该加括号
0
0
0
PIPIONE
for(i=1;i<=n;++i)n*=i;不能用n*=i,改变了n的值,循环就不是n次了,也不是n!了。下面的m!的循环也是这样。
0
0
0
元芳怎么了
定义一个求阶乘的函数,然后将改函数带入式子中需要求阶乘的地方即可。求阶乘是一个典型的利用递归法的案例。1234567int jiecheng(int N){ int res = N; if(N > 1) res *= jiecheng(N - 1); return res;}
0
0
0
没找到需要的内容?换个关键词再搜索试试
向你推荐
m%n==0
#include int main() { int m
n; for(m=3; m
m%n==0
打开App,查看更多内容
随时随地看视频
慕课网APP
相关分类
C++
typedef入门问题
1 回答
vuex
请问vuex如何设置保存数据时间?
1 回答
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续