∑i = 1n1i
换句话说,该方法应生成以下序列:
1+12+13+14+15+⋯
我已经为这个问题感到困惑了很多。很难过的时候了解方程中的“ n”代表什么,并将其应用于我的for循环。
for循环是否可以解决此问题?还是我应该只使用一个公式然后以某种方式解决它?
public static void main(String[] args) {
//Chapter 4 Exercise 1
System.out.println("--Chapter 4, Exercise 1");
System.out.println("How many integers do you want?:");
Scanner console = new Scanner(System.in);
int numb = console.nextInt();
fractionSum(numb)
public static double fractionSum(int numb) {
for(int i = 1; i <numb; i++) {
if (i !=1)
System.out.print("1 + 1" + i);
else
System.out.print("1");
}
return(numb);
}
1+12+13+14+15+⋯
应该是输出。
我的输出显示为:
11 + 121 + 131 + 141 + 15
答案 0 :(得分:0)
回答问题的第一部分:
∑i = 1n1i被称为谐波和-您在问题中给出的输出是错误的,谐波和可以描述为正整数的倒数之和-例如:< / p>
H1 = 1
H2 = 1 + 1/2 = 1.5
H3 = 1 + 1/2 + 1/3 = 1.8333
H4 = 1 + 1/2 + 1/3 + 1/4 = 2.0833
H(n) = 1 + 1/2 + 1/3 + 1/4 ... + 1/n = answer ---> see what n is now?
您应该为此使用for循环,它不是很复杂。希望这个答案可以为您解决任务(我假设第4章练习1中的作业),您可以重试。
答案 1 :(得分:0)
这里:
class Harmonic {
public static void main(String… s) {
int n, i;
float sum = 0;
n = Integer.parseInt(s[0]);
for (i = 1; i <= n; i++) {
sum = sum + (float) 1 / i;
}
System.out.println(“nSum = ”+sum);
}
}