62,615
社区成员
发帖
与我相关
我的任务
分享
public static void main(String[] args) {
int num = 20;
double sum =0;
double temp = 1;
for(int i=1;i<=num;i++){
temp *= i;
System.out.println(i+"!="+temp);
sum+=1/temp;
System.out.println("sum="+sum);
}
System.out.println(sum);
}
public static void test(){
int num = 20;
double sum =0;
long temp = 1;
for(int i=2;i<=num;i++){
temp =temp * i;
sum+=temp;
}
System.out.println(1/sum);
}
//不考虑精度的话,计算e=1+1/1!+1/2!+1/3!+……1/20!
public double e(){
final int n = 20;
double e=1;
for(int i=1;i<=n;i++){
double t=1;
for(int j=2;j<=i;j++){
t*=j;
}
e+=1/t;
}
return e;
}
double e = 1, f = 1;
for (int i = 1; i <= 20; i++) {
f /= i;
e += f;
}
System.out.println(e);
return 1 + 1/1 + 1/2 + 1/(3*2) + .... + 1/(20*19*18...);
import java.util.*;
public class sum1 {
public void main(String srgs[]){
int n=1,sum=1;
Scanner scan=new Scanner(System.in);
System.out.println("请输入一个整数");
for(int i=1;i<=scan.nextInt();i++)
{
for(int j=1;j<=i;j++)
{
n=n*j;
}
sum=sum+1/n;
}
System.out.println("1+1/1!+1/2!+.......+1/n的总和是:"+sum);
}
}
double sum=0;
for(int i=1;i<=20;i++)
{
sum+=1/i;
}
System.out.println(sum);
public class Add {
public static void main(String[] args) {
BigDecimal total = new BigDecimal("1");
BigDecimal temp = new BigDecimal("0");
for (int i = 1; i <= 20; i++) {
temp = loop(i);
total = total.add(temp);
}
System.out.println(total);
}
public static BigDecimal loop(int number) {
BigDecimal result = new BigDecimal("1");
BigDecimal decimal = new BigDecimal("1");
for (int i = 1; i <= number; i++) {
decimal = decimal.multiply(new BigDecimal(Integer.toString(i)));
System.out.println(decimal.toString());
}
return result.divide(decimal, 50, BigDecimal.ROUND_HALF_EVEN);
}
}
应用程序,计算e=1+1/1!+1/2!+1/3!+……1/20!,并输出计算结果。
import java.math.BigDecimal;
public class Test{
/**
* 计算e=1+1/1!+1/2!+1/3!+……1/20!
* @param args
*/
public static void main(String[] args) {
BigDecimal temp=new BigDecimal(0);
temp =loopA(20); //获得1/1!+1/2!+1/3!+……1/20!
temp = temp.add(new BigDecimal(1)); //再加上1
System.out.println(temp);
}
public static BigDecimal loopA(int number){
BigDecimal result = new BigDecimal(0);
BigDecimal decimal = new BigDecimal(1);
for(int i = 1; i <= number; i++){
BigDecimal temp = new BigDecimal(1);
decimal = decimal.multiply(new BigDecimal(i));
System.out.println("decimal = " + decimal);
temp = temp.divide(decimal,50,BigDecimal.ROUND_HALF_EVEN);
System.out.println("temp : " + temp);
result = result.add(temp);
}
System.out.println(result);
return result;
}
}