我的代碼有問題。有一個斐波那契函數,我希望你知道是什麼。還有兩個文件:In0201.txt和Out0201.txt。同樣,程序應該從文件「In0201.txt」中獲取值並將結果寫入Out0201.txt。C++中的斐波那契算法 - 遞歸地
有些值正在寫入,而是寫入數字序列(到文件),它寫入一個值,就像它是序列中所有這些數字的總和。有人知道它爲什麼會發生?
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
//Fibonacci
long double fib(int n) {
if(n == 0)
{
return 0;
}
if(n == 1)
{
return 1;
}
return fib(n-1) + fib(n-2);
}
int main()
{
int a;
int tmp;
ifstream inputFile("In0201.txt");
if (inputFile.is_open()) {
inputFile >> a;
cout << "Loaded the value 'n' from file: " << endl;
cout << a << " " << endl;
inputFile.close();
}
ofstream outputFile("Out0201.txt");
if (outputFile.is_open()) {
tmp = fib(a);
cout << "Fibonacci's sequence number: " << tmp << endl;
outputFile << tmp << ", ";
outputFile.close();
}
return 0;
}
但是在發佈中的代碼,不包括它的鏈接。 – Sean
舉例說明您的輸入,實際輸出和預期輸出。目前還不清楚問題是什麼。 – interjay
我不明白。你告訴它在文件中寫入一個數字,並且你不知道爲什麼它會寫入一個數字? – Griwes