用Java求2!+4!+6!+。。。。。。+30! 偶数的阶乘 输出结果不能用科学计算法 要原样输出

如题所述

第1个回答  2012-04-20
public static void main(String[] args) {
System.out.println(getResult(2, 30));//入口
}
/**
* 获取结果函数
* @param minValue 计算的最小值
* @param maxValue 计算的最大值
* @return BigInteger 结果
*/
public static BigInteger getResult(int minValue, int maxValue){
BigInteger result = new BigInteger("0");
for(int i=minValue;i<=maxValue;i++){
if(i%2==0){//当且仅当i为偶数时执行
BigInteger factoria = getFactoria(i);//获取对应阶乘
result = result.add(factoria);
}
}
return result;
}
/**
* 获取阶乘方法
* @param 要获取阶乘的参数
* @return BigInteger 相应的阶乘
*/
public static BigInteger getFactoria(int a){
BigInteger bi = new BigInteger(String.valueOf(a));
for(int i=1;i<=a;i++){
bi = bi.multiply(new BigInteger(String.valueOf(i)));
}
return bi;
}
第2个回答  2012-04-20
//数太大,long已经不能满足,故用BigInteger,有疑问再问
public static void main(String[] args) {
BigInteger sum=BigInteger.ZERO;//0
for(int i=2;i<=30;i+=2){
sum = jie(i).add(sum);//BigInteger的相加
}
System.out.println(sum);
}
private static BigInteger jie(int i) {
if(i==1)
return BigInteger.ONE;//1
return jie(i-1).multiply(new BigInteger(i+""));//BigInteger的相乘
}本回答被网友采纳
第3个回答  2012-04-20
public class Demo20_1 {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
long sum = 0;
int num = 30;
for(;num > 0;){
int jc = 1;
for(int i = num; i > 0; i--){
jc = jc * i;
}
sum += jc;
num = num - 2;
}
System.out.println(sum);
}

}
第4个回答  2012-04-20
public class jiecheng {
public static void main(String[] args) {
long b = 1;
long c = 0;
for (int i = 2; i < 30; i+=2) {
b = 1;
for (int j = 1; j <= i; j++) {
b = b*j;
}
c = c + b;
}
System.out.println("c = " + c);
}
}
第5个回答  2012-04-26
.

...偶数的阶乘 输出结果不能用科学计算法 要原样输出
public static void main(String[] args) { System.out.println(getResult(2, 30));\/\/入口 } \/ 获取结果函数 param minValue 计算的最小值 param maxValue 计算的最大值 return BigInteger 结果 \/ public static BigInteger getResult(int minValue, int maxValue){ BigInteger result = new BigI...

...偶数的阶乘 输出结果不能用科学计算法 要原样输出
package MyMaths;public class Factorial { \/\/储存数据用long型数组,以MAX_VALUE进位 private static final long MAX_VALUE=10000000000l;\/\/计算阶乘方法f(n)public static long[] f(int n){ \/\/储存结果的数组 long[] result=new long[10];\/\/判断最高位所在 int flag=0;result[0]=1;for(int...

Java实现求阶乘的方法,并利用该方法求解2!+5!+9!+3!的结果
Java实现求阶乘的方法,并利用该方法求解2!+5!+9!+3!的结果 5  我来答 分享 微信扫一扫 网络繁忙请稍后重试 新浪微博 QQ空间 举报 可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。 java 阶乘 搜索资料 本地图片 图片链接 代码 提交回答 匿名 回答自动保存中为你...

利用大整数计算前2!+4!+6!+….+2n!的和,其中n由键盘输入,并要求如果输 ...
循环(i=1 到 n) \/\/得到1 到n的所有数 { j=1 循环(k=1 到 i ) \/\/求出i的阶乘j { j=k*j } m=m+j \/\/求出1!+2!+3!...} 输出2!+4!+6!+….+2n!=2*m OK就这样,java我不会,只给你思路

用java求1到30 的阶层和 用方法
阶乘的公式是 n!=n*(n-1)*(n-2)...*2*1 这个公式可以通过一个java的循环来实现,也就是第一种方法。for(int i=number; i>0;i--)这个循环在i=0的时候结束, 而阶乘的结果通过result*=i来计算。public static int compute(int number){ int result=1;for(int i=number;i>0;i--)...

java里1到10的阶乘相加编程怎么做?
java里1到10的阶乘相加编程方法如下:public class Factorial{ \/\/类 public static void main(String [] args){ \/\/主方法 int a=1; \/\/定义一个变量a int sum=0; \/\/定义一个变量sum,把和存放在sum里 for(int i=1;i<11;i++){ \/\/做1-11循环 a=1; \/\/每次a都从1...

用JAVA 编程方法“ 求出1~10的阶乘”
import java.math.BigInteger;public class JieCheng extends JFrame { \/ author Min Shakes \/ private JTextArea output;private BigInteger cal(String input){ \/\/计算方法cal BigInteger result=BigInteger.ONE;BigInteger max=new BigInteger(input);for(BigInteger i=BigInteger.ONE;max.compareTo(i)!=-...

用JAVA编程实现计算6的阶乘
import java.util.Scanner;public class Test { public static void main(String[] args) { long sum=1;Scanner sin = new Scanner(System.in);System.out.print("请输入一个数字:");int s = sin.nextInt();for(int i=1;i<=s;i++){ sum=sum*i;} System.out.println(s+"的阶乘为...

从1阶乘加到10的阶乘怎么用java写
public class factorial { public static void main(String[] args) { int sum = factorial_sum(); \/\/定义sum调用factorial_sum() System.out.println(sum); } \/** * 定义计算阶乘的函数,可以在factorial_sum()的()里面加一个参数,由用户输入是到1哪一个数的阶乘和。

用JAVA编写程序,计算1!+2!+3!+…+n!的和,其中阶乘的写一个方法...
public class Factorial { \/\/下面的这个方法利用递归的方法求阶乘 public int getFac(int m){ if(m==1){ return 1;} else { return m*getFac(m-1);} } public static void main(String args[]){ Factorial fac=new Factorial();\/\/System.out.println(fac.getFac(4));int sum=0;for(...

相似回答