Java 阶乘的倒数求和老是出问题,求改正

importjava.util.Scanner;//求1+1/(2!)+1/(3!)+...+1/(n!)的和publicclasse{publicstaticvoidm... import java.util.Scanner;//求1+1/(2!)+1/(3!)+...+1/(n!)的和

public class e {

public static void main(String[] args) {
int i,sum=1;
double k,m=0;
Scanner sc=new Scanner(System.in);
System.out.println("请输入");
int j=sc.nextInt();
for( i=1;i<=j;i++)
{k=1/i;
sum*=k;System.out.println( j+"!="+sum );
m+=(1/(sum)); }System.out.println(m);

}
}
展开
 我来答
兔子lucifinil
2014-03-10
知道答主
回答量:3
采纳率:0%
帮助的人:2.6万
展开全部
int sum = 1;
double result = 0;
Scanner sc = new Scanner(System.in);
System.out.println("请输入");
int j = sc.nextInt();
for (int i = 1; i <= j; i++) {
sum *= i;
result += (1.0 / sum);
System.out.println(i + "!=" + sum);
System.out.println("阶乘的倒数" + 1.0 / sum);
System.out.println("阶乘的倒数求和" + result);
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
1742466500
2014-03-10
知道答主
回答量:18
采纳率:0%
帮助的人:7.3万
展开全部
package com.slxy.lianxi;
import java.util.Scanner;
//求1+1/(2!)+1/(3!)+...+1/(n!)的和
public class e {
/**求每一个数的阶乘 */
static double jie(int n){
double result=1;
for(int i=n;i>0;i--){
result = result*i;
}
return result;
}
/**对每一个数的阶乘分之一求和 */
static void sum(int n){
double sum=0;
for(int i=1;i<=n;i++){
sum = sum+1/jie(i);
}
System.out.println(sum);
}

public static void main(String[] args) {
System.out.println("要求几的阶乘,请输入该数:");
Scanner scan = new Scanner(System.in);
sum(scan.nextInt());
}
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
刷新遮旧L
2014-03-10 · TA获得超过1638个赞
知道小有建树答主
回答量:364
采纳率:50%
帮助的人:107万
展开全部
你这样的结果出现了1/0的情况,除数为0,会出现异常的。如果捕获异常的话,最终的结果是1.0。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式