How can i get rid of the infinite loop in this program...
Code:
#include <iostream.h>
#include <fstream.h>
#include <stdlib.h>
#include <iomanip.h>
int main()
{
ifstream myFile;
double accNum, gallons;
char code;
double totals, discount, gst, pst, finCost;
myFile.open("gallons2.txt",ios::nocreate);
if (myFile.fail())
{
cout<<"File cannot be opened"<<endl;
exit(-1);
}
myFile>>accNum>>code>>gallons;
while (!myFile.eof())
{
switch (code)
{
case 'H':
totals = (0.0005 * gallons) + 5;
if ((totals > 75) && (totals < 1000))
discount = totals * 0.1;
else if (totals > 20)
discount = totals * 0.05;
else
discount = 0;
break;
case 'C':
totals = (0.00025 * (gallons - 4000000)) + 1000;
discount = 0;
break;
case 'I':
discount = 0;
if (gallons <= 4000000)
totals = 1000;
else if ((gallons > 4000000) && (gallons <= 10000000))
totals = 2000;
else
totals = 3000;
break;
default:
cout<<"Error Input";
break;
}
gst = (totals - discount) * 0.07;
pst = (totals - discount) * 0.075;
finCost = (totals - discount) + gst +pst;
cout<<accNum<<code<<gallons<<totals<<discount<<gst<<pst<<finCost;
}
cout<<"Account"<<endl;
cout<<"Number "<<"Code "<<"Consumption "<<"Total "<<"Discount "<<"GST "<<"PST "<<"Final Cost "<<endl;
myFile.close();
return 0;
}