我想添加所有奇数:System.out.print(store + " ");
如果您有任何建议,请帮助我。
import java.util.stream.IntStream;
public class Fibonacci {
public static void main(String a[]) {
int Fibcnt = 25;
int[] feb = new int[Fibcnt];
feb[0] = 0;
feb[1] = 1;
for (int i = 2; i < Fibcnt; i++) {
feb[i] = feb[i - 1] + feb[i - 2];
}
for (int i = 0; i < febCount; i++) {
int store = feb[i];
if (store % 2 == 1) {
System.out.print(store + " ");
}
}
}
}
答案 0 :(得分:0)
您的代码唯一的问题是您在febCount
循环中使用了未定义的变量名for
。如果你改成它,应该可以正常工作:
for (int i = 0; i < Fibcnt; i++) {
答案 1 :(得分:0)
你的意思是你想要计算所有奇数的总和吗?
首先,您尚未声明并初始化febCount
,因此您需要解决此问题。在这种情况下,febCount
与Fibcnt
相同,但您可以使用feb.length
代替。
public class Fibonacci {
public static void main(String a[]) {
int Fibcnt = 25;
int[] feb = new int[Fibcnt];
feb[0] = 0;
feb[1] = 1;
for (int i = 2; i < Fibcnt; i++) {
feb[i] = feb[i - 1] + feb[i - 2];
}
int sum_odd = 0;
for (int i = 0; i < feb.length; i++) {
if (feb[i] % 2 == 1) {
sum_odd += feb[i];
System.out.print(feb[i] + " ");
}
}
System.out.println();
System.out.println("Total of odd numbers: " + sum_odd);
}
}
此代码的输出为:
1 1 3 5 13 21 55 89 233 377 987 1597 4181 6765 17711 28657 Total of odd numbers: 60696
看起来你打算用IntStream
来执行求和,在这种情况下可以使用这样的东西来执行计算,但是,它不会像你的代码一样打印奇数值: / p>
int sum_odd = IntStream.of(feb).filter(i -> i%2==1).sum();