求阶乘之和。用c++语言编程。
【题目描述】定义i!=1*2*3*…*i,现在给你一个正整数k,你的任务是求出一个最小的n,使得1!+2!+3!+…+n!>k【输入样例】9【输出样例】4请用while来...
【题目描述】
定义i!=1*2*3*…*i,现在给你一个正整数k,你的任务是求出一个最小的n,使得1!+2!+3!+…+n!>k
【输入样例】
9
【输出样例】
4
请用while来做,谢谢!
在线坐等中…… 展开
定义i!=1*2*3*…*i,现在给你一个正整数k,你的任务是求出一个最小的n,使得1!+2!+3!+…+n!>k
【输入样例】
9
【输出样例】
4
请用while来做,谢谢!
在线坐等中…… 展开
2个回答
展开全部
#include<iostream>
using namespace std;
int main(){
int i = 0,fac = 1, sum = 0, k;
cout << "Please input the value of k : ";
cin >> k;
while(sum <= k)
{
++i;
fac = fac * i;//求阶乘
sum = sum + fac;//求阶乘之和
}
cout << "1" << '!';
for(int j = 2; j <= i; j++)
cout << " + " << j << '!' ;
cout << " > " << k << endl;
cout << "最小的n : " << i <<endl;
return 0;
}
这是我自己写的,希望采纳。
2016-08-14
展开全部
用递归,写了 。。。。。。。。。。。。。。。
追问
求详解
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询