用java求1+1/2+1/3+……+1/n

输入一个正整数repeat (0<repeat<10),做repeat次下列运算:
读入1 个正整数 n(n<=100),计算并输出1+1/2+1/3+……+1/n 。
例:括号内是说明
输入
2 (repeat=1)
2
10
输出
1.5
2.929

import java.util.Scanner;
public class Test40001 {
public static void main(String[] args) {
int ri, repeat;
int i, n;
float sum;
Scanner in=new Scanner(System.in);
repeat=in.nextInt();
for(ri=1; ri<=repeat; ri++){
n=in.nextInt();
/*--------------------*/
System.out.println((int)(sum*1000+0.5)/1000.);
}
}
}

第1个回答  2012-03-18
import javax.swing.JOptionPane

public class Method {
public static void main(String[] args) {
String nString = JOptionPane.showInputDialog(null,"Enter the n.");
int n = Integer.parseInt(nString);
double k = n;
double sum = 0;
String output = "The sum of ";

for(int i = 1;i <= k;i++) {
sum += 1/i;
if(i<k)
output += "1/" + i + " + ";
else
output += "1/" + i;
}

JOptionPane.showMessageDialog(null,output + " is " + sum);
}
}

手机打的,累死了,希望对楼主有所帮助,望采纳!
第2个回答  2012-03-18
是要求1+1/2+1/3+……+1/n 吗?
第3个回答  2012-03-18
import java.util.Scanner;

public class Test40001 {
public static void main(String[] args) {
int ri, repeat;
int i, n;
float sum;
Scanner in = new Scanner(System.in);
repeat = in.nextInt();
for (ri = 1; ri <= repeat; ri++) {
n = in.nextInt();
/*--------------------*/
sum = 0F;
for(int j = 1; j <= n; j++){
sum = sum + 1 / (float)j;
}
/*-------add ends---*/
System.out.println((int) (sum * 1000 + 0.5) / 1000.);
}
}
}本回答被提问者采纳

1+1\/2+1\/3+…+1\/n求和公式
1+1\/2+1\/3+…+1\/n叫做调和级数,没有求和的公式,当n很大时有一个渐近表达式,n项求和:∑(1\/k)->ln(n)+c,其中ln(n)是n的自然对数,也就是以e为底的对数(e≈2.71828182846);c是欧拉常数(约为0.577215665)。1+1\/2+1\/3+…+1\/n求和公式 1、公式法:这个是等比数列求和:a1=...

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 加到第123...

用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);} ...

java求1\/1!+ 1\/2! + 1\/3!+...1\/n!之和。n= 20
思路就是a从1开始,每次把1\/a累加的sum里面。累加一次,a加1,这样第一次累加1\/1,第二次累加1\/2。while判断a<=20时一直累加,直到加到1\/20。当a=21时,不再进入循环累加。sum存累加的和,a存当前循环的分母。

java 题 计算 1\/1+1\/2+1\/3+...+1\/100 的值,我不确定答案,代码是什么...
double sum = 0;for(int i = 1; i <= 100; i++){ sum += 1\/i }

用java写1+1\/2+1\/3+...+1\/100怎么写
for(int i=1;i<=100;i++){ if(i==1)System.out.print("1 + ");if(i==100)System.out.println("1\/100");else System.out.print("1\/"+i+" + ");} 输出结果就是:1 + 1\/1 + 1\/2 + 1\/3 + 1\/4 + 1\/5 + 1\/6 + 1\/7 + 1\/8 + 1\/9 + 1\/10 + 1\/11 + 1...

利用函数递归求 1+1\/2+1\/3+1\/4+…+1\/n
{ double sum;if(num <= 1)sum=num;else sum =(1.0\/num)+fac(num-1); \/\/double和int做除法的时候,如果前后都被判断为整数会自动四舍五入,所以这里要用1.0 return sum;} void main(){ int n;double s;printf("n=");scanf("%d",&n);s=fac(n);printf("%lf",s);} ...

java编写程序,用while循环计算100以内1+1\/2+1\/3+……+1\/100的和。
double sum = 0;double n = 1;while(n<=100){ sum+= 1\/n; n++;}System.out.println(sum);

Java计算 1+1\/2!+1\/3!···1\/20! 谁能给我详细讲解一下以下代码这个阶...
参数:multiplicand - 乘以此 BigDecimal 的值。返回:this * multiplicand 关于SCALE的理解:21\/110 = 0.190 \/\/ integer=190, scale=3 19\/100=0.19\/\/integer=19, scale=2 好了 回到开头的地方来,1+1\/2!+1\/3!···1\/20!在这个循环里面 fac先等于1 循环之后fac = 1×1\/2 = 1\/...

求1+1\/2+1\/3+1\/4+...+1\/n的值的表达式
楼主是要这个这个级数的通项公式把,拒我所知,还没有人算出过它的通项公式。连它是发散的级数这个性质,也是很晚才得出的。后来发现,再给它加个项,-ln(n)的情况下,发现它是收敛的级数,在n趋向于无穷大的时候,定义它的极限为r(咖玛),称为欧拉常数。所以就有了一楼给出的结论。近似的...

相似回答