Ich bekomme negative Ausgabe, wenn große Zahlen in Fibonacci-Sequenz trotz Verwendung long Int hinzugefügt werden. Wie behebt man das?Negative Ausgabe in Fibonacci Sequenz
#include <iostream>
using namespace std;
void main() {
long int sum = 2;
long int f1 = 1, f2 = 2, f3;
for (unsigned int i = 2; i < 4000000; i++) {
f3 = f2 + f1;
if (!(f3 % 2)) {
sum += f3;
}
swap(f1, f2);
swap(f2, f3);
}
cout << sum << endl;
}
Der Ausgang ist -1833689714
Integer Überlauf. – PRP
was übrigens ein undefiniertes Verhalten ist. – Asu