已知不等式 1!+2!+3!+...+m!?n,请编程对用户指定的n值计算并输出满足该不等式的m的整数解。
标签:printf 不等式 编程 过程 int 取值 ble 整数 类型
已知不等式 1!+2!+3!+...+m!?n,请编程对用户指定的n值计算并输出满足该不等式的m的整数解。
输入一个整数n,n为int范围内的正整型。
输出m的取值范围,具体格式见输出样例。
2000000000
m<=12
注意计算过程中的类型溢出问题
#include<stdio.h>
int main()
{
int i, n;
double sum, fact; //若定义为int,会造成计算过程中类型溢出
scanf("%d", &n);
fact = 1;
sum = 0;
for(i = 1; ; i++)
{
fact *= i;
sum += fact;
if(sum >= n)
{
printf("m<=%d\n", i-1);
break;
}
}
return 0;
}
标签:printf 不等式 编程 过程 int 取值 ble 整数 类型
原文地址:https://www.cnblogs.com/binanry/p/9217285.html