手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

Java 求1/a!+1/(a-1)!+.......+1/2!+1/1!

时间:2024-10-19 07:11:19

1、在Eclipse中新建一个类,类名可以用中文。这里用“阶乘”做类名。

Java 求1/a!+1/(a-1)!+.......+1/2!+1/1!

2、系统会自动生成以下代码

Java 求1/a!+1/(a-1)!+.......+1/2!+1/1!

3、由于a的值是未知的,也就是要使用者输入。所以要用到Scanner。所以在类名前加上import java.util.Scanner;

Java 求1/a!+1/(a-1)!+.......+1/2!+1/1!

4、输入以下代码import java.util.Scanner;publi罕铞泱殳c class 阶乘 { pub造婷用痃lic static void main(String[] args) { // TODO 自动生成的方法存根 Scanner scanner=new Scanner(System.in); int a=scanner.nextInt();int sunm=0;for(int i=0;i<=a;i++){ int c=1; for(int j=1;j<=i;j++){ c=c*j; } float m=1.0f/c; System.out.println(i+"!="+c); System.out.println("1/"+i+"!="+m);} }}

Java 求1/a!+1/(a-1)!+.......+1/2!+1/1!

5、输入4调试;结果如下

Java 求1/a!+1/(a-1)!+.......+1/2!+1/1!

6、结果要求保留两位有效数字,所以要用到DecimalFormat

Java 求1/a!+1/(a-1)!+.......+1/2!+1/1!
Java 求1/a!+1/(a-1)!+.......+1/2!+1/1!

7、调试后发现问题 0!=1,所以把for(int i=0;i<=a;坡纠课柩i++)改成for(int i=1;i<稆糨孝汶;=a;i++)。完整代码如下import java.util.Scanner;public class 阶乘 { public static void main(String[] args) { // TODO 自动生成的方法存根 Scanner scanner=new Scanner(System.in); int a=scanner.nextInt(); java.text.DecimalFormat df=new java.text.DecimalFormat("#.##");float sunm=0;for(int i=1;i<=a;i++){ int c=1; for(int j=1;j<=i;j++){ c=c*j; } float m=1.0f/c; System.out.println(i+"!="+c); System.out.println("1/"+i+"!="+df.format(m)); sunm=m+sunm;}System.out.println("1/"+a+"!+"+"1/"+(a-1)+"!+"+"......+"+"1/2!+"+"1/1!="+df.format(sunm)); }}

Java 求1/a!+1/(a-1)!+.......+1/2!+1/1!
Java 求1/a!+1/(a-1)!+.......+1/2!+1/1!
© 手抄报圈