Somebody can help me to point out the error? this code everything are ok except
ID: 3819849 • Letter: S
Question
Somebody can help me to point out the error?
this code everything are ok except the arithmetic mean and root-mean-square calculate, it show below:
Arithmetic Mean = 0.00
Root-Mean-Square =0.00
//#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <cmath>
using namespace std;
const int numValues = 26;
class Roughness
{
public:
void instructions ();
void readData();
double arithmeticMean();
double rootMeanSquare();
void findMaximum();
void printReport();
private:
double average,
square,
maximum,
data[numValues];
};
int main()
{
double mean, square;
Roughness r;
r.instructions();
r.readData ();
mean = r.arithmeticMean();
square = r.rootMeanSquare();
r.findMaximum();
r.printReport();
return 0;
}
void Roughness::instructions ()
{
cout << "instructions" << endl;
}
void Roughness::readData()
{
ifstream inputFileObject;
inputFileObject.open("surface.txt");
if(inputFileObject.fail())
{
cout<<" Your input file would not open.Sorry.Goodbye. ";
exit(1);
}
//inputFileObject >>numberToProcess;
for (int i =0; i < numValues; i++)
{
inputFileObject >>data[i];
}
inputFileObject.close();
return;
}
double Roughness::arithmeticMean()
{
double average;
double sum = 0.0;
for(int i=0;i<numValues;i++)
sum += abs(data[i]);
average = sum/numValues;
return average;
}
double Roughness::rootMeanSquare()
{
double square = 0;
for(int i=0; i<numValues; i++)
{
square += pow(data[i],2);
}
square =sqrt(square/numValues);
return square;
}
void Roughness::findMaximum()
{
maximum = data[0];
for(int i=1;i<numValues;i++)
if(data[i] > maximum)
maximum = data[i];
}
void Roughness::printReport()
{
cout.setf(ios::showpoint | ios::fixed);
cout.precision(2);
cout<<" Report Results Data Values ";
for(int i=0;i<numValues;i++)
cout<<data[i]<<" ";
cout<<" Arithmetic Mean = "<<average;
cout<<" Root-Mean-Square ="<<square;
cout<<" Maximum = "<<maximum<<" ";
return;
}
Explanation / Answer
include the header file, and run the program. as
#include<stdlib.h>
the output for the program is given below
-------------------------------------------------------------------------------------------------------------------------------------------------------
#include <iostream>
#include <fstream>
#include <stdlib.h>
#include <cmath>
using namespace std;
const int numValues = 26;
class Roughness
{
public:
void instructions ();
void readData();
double arithmeticMean();
double rootMeanSquare();
void findMaximum();
void printReport();
private:
double average,
square,
maximum,
data[numValues];
};
int main()
{
double mean, square;
Roughness r;
r.instructions();
r.readData ();
mean = r.arithmeticMean();
square = r.rootMeanSquare();
r.findMaximum();
r.printReport();
return 0;
}
void Roughness::instructions ()
{
cout << "instructions" << endl;
}
void Roughness::readData()
{
ifstream inputFileObject;
inputFileObject.open("surface.txt");
if(inputFileObject.fail())
{
cout<<" Your input file would not open.Sorry.Goodbye. ";
exit(1);
}
//inputFileObject >>numberToProcess;
for (int i =0; i < numValues; i++)
{
inputFileObject >>data[i];
}
inputFileObject.close();
return;
}
double Roughness::arithmeticMean()
{
double average;
double sum = 0.0;
for(int i=0;i<numValues;i++)
sum += abs(data[i]);
average = sum/numValues;
return average;
}
double Roughness::rootMeanSquare()
{
double square = 0;
for(int i=0; i<numValues; i++)
{
square += pow(data[i],2);
}
square =sqrt(square/numValues);
return square;
}
void Roughness::findMaximum()
{
maximum = data[0];
for(int i=1;i<numValues;i++)
if(data[i] > maximum)
maximum = data[i];
}
void Roughness::printReport()
{
cout.setf(ios::showpoint | ios::fixed);
cout.precision(2);
cout<<" Report Results Data Values ";
for(int i=0;i<numValues;i++)
cout<<data[i]<<" ";
cout<<" Arithmetic Mean = "<<average;
cout<<" Root-Mean-Square ="<<square;
cout<<" Maximum = "<<maximum<<" ";
return;
}
output
instructions
Your input file would not open.Sorry.Goodbye.
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.