2015-10-09 36 views
-3

我已經創建了一個函數,創建一個Maclaurin系列,使其成爲最高N個條件。它工作正常,但現在我想這個值輸出到.txt文件。我很抱歉,如果這顯然是明顯的,但我對C++很新,並花費數小時試圖讓該死的東西工作!如何輸出一個函數?

這裏是我的腳本;

#include<iostream> 
#include<fstream> 
#include<string> 

using namespace std; 


void Expseries(double x, int N) 
{ 
    int i; // i is loop counter 
    double M = 1; // M is individual term in Maclaurin series 
    double A = 0; // A is sum of each M terms 

    for (i = 1; i <= N; i++) 
    { 
     M = M*(x/i); 

     A = A + M; 

    } 
    cout << A +1 << endl; 
} 
int main() 
{ 
    ofstream jackFile; 
    jackFile.open("macout.txt"); 
    if (jackFile.bad()) { 
     cerr << "Error accessing file."; 
    } 


     jackFile << Expseries(3, 3); 


    jackFile.close(); 
    return 0; 

} 

有人請賜教,告訴我我做錯了什麼。 非常感謝!

+0

(1)不要測試'bad',測試一般故障,'jackfile.fail()',和(2)如果出現故障,'return' 。另外,(3)你確定你在正確的位置尋找文件。 –

+0

注:只寫'如果(jackfile!)'相當於寫'如果(jackfile.fail())' –

+0

您發送函數的輸出到文件中。這不會在函數中重定向cout。 – stark

回答

0

你的函數不會返回它只是將其輸出到屏幕上的任何東西。 編輯你的函數是這樣的:

double Expseries(double x, int N) 
{ 
    int i; // i is loop counter 
    double M = 1; // M is individual term in Maclaurin series 
    double A = 0; // A is sum of each M terms 

    for (i = 1; i <= N; i++) 
    { 
     M = M*(x/i); 

     A = A + M; 

    } 
    return A+1; 
} 
相關問題