package s1;//包名可以不要//
public class s1{
public static void main(String[]args) {
double a,b,c,sum=0;//因为有小数所以是double类型//
while(true){
for(a=2;a<=20;a++) {
c=(1/a);//计算每一次循环的结果//
sum=sum+c;//累计每一次的//
}
sum=sum+1;//加上1//
System.out.println(+sum);//输出结果//
break;//结束while循环//
}
}
}
F1 = 1
F2 = F1 / 2
F3 = F2 / 3
Fn = F(n-1) / n
如果每一项都计算一遍阶乘,那么程序的复杂度会很大,可以通过备忘录的形式,比如将F(n-1)的计算结果保存下来,计算Fn的时候,就不用再计算(n-1)的阶乘了。
代码如下:
public class Test3 {运行结果:
编写Java程序,使用while循环语句计算1+1\/2!+1\/3!…1\/20!之和.
public class WhileDemo { public static void main(String[] args) { \/*i=i+1的简写形式是i+=1;但是二者有本质的区别:如果 i是short类型,+=:会自动类型提升,而=则不会 所以 short i=0;i+=1;\/\/编译通过,类型提升 i=i+1;\/\/编译失败,因为这是赋值操作,i是short类型,而1是默认是in...
java用do-while循环计算1 1\/2! 1\/3! 1\/4! ...的前20项和
public static int jieCheng(int n) { int result = 1;for (int i = 1; i <= n; i++) { result *= i;} return result;} 然后如你要求的用dowhile()循环计算:(也给你写了个方法)public static double caculate(int n) { double sum = 0.0;int i=1;do{ sum = sum + 1...
使用java程序实现 根据输入的自然数n求1+1\/2+1\/3+1\/4+…+1\/n的和
long size = n.longValue();\/\/为尽量减少精度损失,采用全部同分后 分子和 除以 分母 的方式 for(long i=1;i<=size;i++){ \/\/计算分母 product = product.multiply(new BigDecimal(i));} for(long i=1;i<=size;i++){ \/\/计算分子和 sum = sum.add(product.divide(new BigDecimal(i)...
用JAVA的For循环编写1+1\/2+1\/3+1\/4+1\/5+1\/6+1\/7+1\/8+1\/9+1\/10
public static void main(String[] args){ float sum = 0;for (int i = 1;i <= 100;i++) { sum+=(float)1\/i;} System.out.println(sum);} } 我把上面的哥们的东西改了下,估计更好看一些!运行没错。
用for循环语句计算1+1\/2+1\/3+1\/4~~~+1\/1+n其中n=1,2,
我用java写的 n是你要加到得那个数,我没看清你要加到几分之几 就用n代替了 如果你要加到1/100就把n换成100 class A{ public static voidmain(String args[]){ double b=0;for(int i=1;i<=n;i++){ b+=1\/(double)i;} System.out.println(b);} } ...
java while语句 求1+1\/2+1\/3+1\/4
sum = sum + isShu; } System.out.println(sum);} }写这个计算公式你应该以数学的角度去想.Step1. sum=1\/2+0;Step2. sum=1\/3+sum;Step3. sum=1\/4+sum;.以此类推..Step19. sum=1\/20+sum;第一个问题.用while是不是最快最简便的?对于一开始初学者来说,实现一个问题的教...
用java编写个1+1\/2+1\/3+1\/4...1\/n
public static void main(String[] args) { System.out.print("输入n:"); int n = new Scanner(System.in).nextInt(); double sum = 0; int i = 1; while (i <= n) { sum += (double) 1 \/ i++; } System.out.println(sum);} ...
编写代码求表达式的值:1+1\/2-1\/3+1\/4-1\/5+1\/6-……+1\/20(语言不限于C#...
用java简单的写下吧,double sum=1;\/\/初始化一个值 for(int i=2;i<=20;i++){\/\/看下表达式特点,自分母为2始,开始有正负之分,就OK了。if(i%2==0){ sum= sum+1\/i;}else { sum=sum-1\/i;} } 肯定不是最高效的,解决问题有余了。
java语言中1+1\/2!+1\/3!……中!+什么意思,详解视
2!是表示2的阶乘,也就是2×1;3!当然就是3的阶乘啦,用数学式子表示就是3×2×1,之后4!5!6!的阶乘也依次类推。题中的1+1\/2!+1\/3!……用java式子表示就是:1+1\/(2*1)+1\/(3*2*1)……
Java编程:计算1+1\/2+1\/3+1\/4+···+1\/n,加到多少项时,其和可超过10...
public static void main(String args[]) { double n=1;double sum=0;while(sum<10){ sum=sum+1\/n;System.out.println("n="+n);System.out.println("sum="+sum);n++;} System.out.println("加到第"+(n-1)+"项时满足sum>10");} } n=12367.0 sum=10.000043008275778 加到第...