Develop a C++ function with following function prototype: double fileAvg(string fname); The function accepts the name of file as input and returns the average of the numbers in that file (the file is assumed to contain numbers only). Write a C++ main program that prompts the user to enter a file name that contains a set of numbers. The main program should calculate the average of the numbers in the file using the function fileAvg and display the returned value to the user.
Develop a C++ function with following function prototype: double fileAvg(string fname); The function accepts the name of file as input and returns the average of the numbers in that file (the file is assumed to contain numbers only). Write a C++ main program that prompts the user to enter a file name that contains a set of numbers. The main program should calculate the average of the numbers in the file using the function fileAvg and display the returned value to the user.
Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
Related questions
Question
num 2 in c++

Transcribed Image Text:Develop a C++ function with following function prototype:
double fileAvg(string fname);
The function accepts the name of file as input and returns the average of the
numbers in that file (the file is assumed to contain numbers only). Write a
C++ main program that prompts the user to enter a file name that contains a
set of numbers. The main program should calculate the average of the
numbers in the file using the function fileAvg and display the returned value
to the user.
Expert Solution

Step 1
Program code:
//include the required header files
#include <iostream>
#include <fstream>
using namespace std;
//definea function to find average
double fileAvg(string fname)
{
//declare the required variables
int sum = 0;
int counter = 0;
int x;
// Open the input file using ifstream
ifstream inFile;
inFile.open(fname.c_str());
//if true
if (!inFile)
{
//print the statement
cout << "Unable to open file";
// terminate with error
exit(1);
}
// Read the numbers one by one and keep overwriting x with the last read number
while (inFile >> x)
{
// Add the last read number to "sum"
sum = sum + x;
// Increase counter by 1
counter++;
}
// Close the file
inFile.close();
// Return sum/counter which is the same as average of all the numbers that were read
return (double) sum/counter;
}
//define main
int main()
{
//declare variable for file name
string fname;
//propt the user to enter the file name
cout << "Name your file: ";
//scan for input
cin>>fname;
// Print the value returned by calling the function fileAvg with input fname
cout <<"Average: "<<fileAvg(fname) << endl;
}
Step 2
Program code #1:
Step 3
Program code #2:
Step by step
Solved in 5 steps with 4 images

Recommended textbooks for you

Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON

Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science

Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning

Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON

Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science

Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning

Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning

Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education

Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY