[英]How to display sum of numbers divided by their factorial? [closed]
我是初学者,在做这个程序时我真的很困难。
问题是:
(1/1!)+(2/2!)+(3/3!)+(4/4!)- - - -n
所以这里有 n 个项(其中一个数字除以其阶乘),我必须显示 scanf 函数中给出的任意数量项的总和的输出。
我只知道一件事是这个程序可以通过使用“Nested for”循环来完成,但我还没有完全掌握 C 语言。 所以你们必须帮助我解决这个问题。 :)
#include <stdio.h>
#include <conio.h>
void main(void){
int s,a,b,n,fact=1;
//clrscr();
printf("Enter number of terms=");
scanf("%d",&n);
for(a=1;a<=n;a++) {
fact=fact*a;
b=(a/fact);
printf("Sum=%d",s);
}
getche();
}
PS我必须用“嵌套for”循环来做。
不,您不需要任何嵌套的 for 循环来解决您的问题。 以下是您可以遵循的程序:
function factorial
Input: numbers L.
Output: factorial of L.
function sum
Input: n.
Output: sum.
sum = 0;
for i = 1 to n, do
sum ← sum + (i / factorial(i))
return sum
#include <stdio.h>
int main(void) {
// your code goes here
int n;
float sum = 0,d,fact =1,j,i;
printf("Enter the number:");
scanf("%d",&n);
for(i=1;i<=n;i++){
fact = 1;
for (j = 1; j <= i; j++){
fact = fact * j;
}
d = (float) i / (float) fact ;
sum = sum + d;
}
printf("sum = %f", sum);
return 0;
}
它的工作..你可以在这里检查:- https://ideone.com/JVXQVX
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.