Listing 10, SentinelLoop01
/*File: SentinelLoop01.cpp
This C++ program illustrates the use of a sentinel loop.
Typical screen output from this program follows:
Enter a grade or -1 to quit.
20.0
Enter a grade or -1 to quit.
40.0
Enter a grade or -1 to quit.
60.0
Enter a grade or -1 to quit.
-1
Average = 40
**********************************************************/
#include <iostream>
using namespace std;
class SentinelLoop01{
public:
static void classMain(){
SentinelLoop01* ptrToObject = new SentinelLoop01();
ptrToObject -> doSomething();
}//End classMain function
//-----------------------------------------------------//
//An instance function of the SentinelLoop01 class
void doSomething(){
int count = 0;
double sum = 0;
cout << "Enter a grade or -1 to quit." << endl;
//Do a priming read
double temp = 0;
cin >> temp;
while(temp != -1.0){
count = count + 1;
sum = sum + temp;
cout << "Enter a grade or -1 to quit." << endl;
cin >> temp;
}//end while loop
if(count != 0){
cout << "Average = " << sum/count << endl;
}//end if
}//end doSomething function
};//End SentinelLoop01 class
//-------------------------------------------------------//
int main(){
SentinelLoop01::classMain();
return 0;
}//end main
Listing 10
|