Ask Question
4 February, 06:59

Implement the function fileSum. fileSum is passed in a name of a file. This function should open the file, sum all of the integers within this file, close the file, and then return the sum. If the file does not exist, this function should output an error message and then call the exit function to exit the program with an error value of 1.

+2
Answers (1)
  1. 4 February, 07:54
    0
    The C+ + code is given below with appropriate comments for better understanding

    Explanation:

    /*C+ + program that prompts user to enter the name of input file (input. txt in this example) and print the sum of the values in the file to console. If file dosnot exist, then close the program * /

    //header files

    #include

    #include

    #include

    #include / /needed for exit function

    using namespace std;

    //function prototype

    int fileSum (string filename);

    int main ()

    {

    string filename;

    cout << "Enter the name of the input file: ";

    cin >> filename;

    cout << "Sum: " << fileSum (filename) << endl;

    system ("pause");

    return 0;

    }

    /*The function fileSum that takes the string filename and

    count the sum of the values and returns the sum of the values*/

    int fileSum (string filename)

    {

    //Create a ifstream object

    ifstream fin;

    //Open a file

    fin. open (filename);

    //Initialize sum to zero

    int sum=0;

    //Check if file exist

    if (! fin)

    {

    cout<<"File does not exist."<
    system ("pause");

    exit (1);

    }

    else

    {

    int value;

    //read file until end of file exist

    while (fin>>value)

    {

    sum+=value;

    }

    }

    return sum;

    }//end of the fileSum
Know the Answer?
Not Sure About the Answer?
Get an answer to your question ✅ “Implement the function fileSum. fileSum is passed in a name of a file. This function should open the file, sum all of the integers within ...” in 📙 Computers & Technology if there is no answer or all answers are wrong, use a search bar and try to find the answer among similar questions.
Search for Other Answers