在 java 中添加斐波那契奇数序列
Adding Fibonacci odd sequence in java
我想将所有奇数相加: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 + " ");
}
}
}
}
您的代码的唯一问题是您在 for
循环中使用了未定义的变量名称 febCount
。如果将其更改为这样应该可以正常工作:
for (int i = 0; i < Fibcnt; i++) {
你的意思是要计算所有奇数的和吗?
首先你还没有声明和初始化 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
来执行求和,在这种情况下,可以使用类似这样的东西来执行计算,但是,它不会像您的代码那样打印奇数:
int sum_odd = IntStream.of(feb).filter(i -> i%2==1).sum();
我想将所有奇数相加: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 + " ");
}
}
}
}
您的代码的唯一问题是您在 for
循环中使用了未定义的变量名称 febCount
。如果将其更改为这样应该可以正常工作:
for (int i = 0; i < Fibcnt; i++) {
你的意思是要计算所有奇数的和吗?
首先你还没有声明和初始化 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
来执行求和,在这种情况下,可以使用类似这样的东西来执行计算,但是,它不会像您的代码那样打印奇数:
int sum_odd = IntStream.of(feb).filter(i -> i%2==1).sum();