Name: Anonymous 2007-01-18 11:01
using namespace std;
#include <iostream>
#include <fstream>
#include <string>
#include <cstdlib>
class Sales
{
public:
void setSales( int d, double t );
double calcCommission( double );
int getNum() { return deptNum; }
double getTotal() { return dayTotal; }
private:
int deptNum;
double dayTotal;
};
string deptnumtoname ( int dept );
void Sales::setSales( int d, double t )
{
deptNum = d;
dayTotal = t;
}
double Sales::calcCommission( double total )
{
double percent;
if ( total <= 500 )
{
percent = 0.05;
}
else if ( total > 500 && total <= 2000 )
{
percent = 0.2;
}
else if ( total > 2000 && total <= 4000 )
{
percent = 0.25;
}
else if ( total > 4000 )
{
percent = 0.3;
}
return ( total * percent );
}
void writetofile( int line, double comm )
{
Sales salesdata;
string deptname;
int deptnumber = salesdata.getNum();
double totalsales = salesdata.getTotal();
deptname = deptnumtoname( deptnumber );
ofstream outfile;
outfile.open ("com_sales.txt");
if ( outfile.fail() )
{
cout << "error opening file" << endl;
outfile.close();
exit (1);
}
else {
outfile << line << deptname << totalsales << comm << "\n";
}
}
string deptnumtoname ( int dept )
{
string deptname;
switch (dept){
case 1:
deptname = "Toys";
break;
case 2:
deptname = "Homeware";
break;
case 3:
deptname = "Electricals";
break;
case 4:
deptname = "AudioEquipment";
break;
case 5:
deptname = "Music";
break;
case 6:
deptname = "DIY";
break;
case 7:
deptname = "LadiesClothing";
break;
case 8:
deptname = "MensClothing";
break;
case 9:
deptname = "ChildrensClothing";
break;
case 10:
deptname = "Seasonal";
break;
default:
deptname = "Null";
}
return deptname;
}
void highlow ( int selection, int& deptnumber, double& daytotal )
{
Sales salesdata;
int dept = salesdata.getNum();
double total = salesdata.getTotal();
double hightotal = 0;
int highdept;
double lowtotal = 500000;
int lowdept;
if ( total > hightotal )
{
hightotal = total;
highdept = dept;
}
else if ( total < lowtotal )
{
lowtotal = total;
lowdept = dept;
}
if ( selection == 1 )
{
deptnumber = highdept;
daytotal = highdept;
}
if ( selection == 2 )
{
deptnumber = lowdept;
daytotal = lowdept;
}
}
void highlowoutput( int selection, int deptnum, double total )
{
string deptname;
if ( selection == 1 )
{
deptname = deptnumtoname( deptnum );
cout << "The department with the lowest sales is: " << deptname << ", its sales were: " << total;
}
else if ( selection == 2 )
{
deptname = deptnumtoname( deptnum );
cout << "The department with the highest sales is: " << deptname << ", its sales were: " << total;
}
}
int main()
{
Sales salesdata;
int dept, count = 1, selection, deptnum2;
double total, commission, total2;
int * deptpointer;
double * totalpointer;
deptpointer = &deptnum2;
totalpointer = &total2;
cout << "Would you like to see the highest sales deparment or the lowest : enter 1 for highest, 2 for lowest: ";
cin >> selection;
ifstream infile;
infile.open("ica_sales.txt");
if ( infile.fail() )
{
cout << "error opening file" << endl;
infile.close();
exit (1);
}
else {
while ( ! infile.eof() )
{
infile >> dept;
infile >> total;
salesdata.setSales( dept, total );
commission = salesdata.calcCommission( total );
highlow( selection, *deptpointer, *totalpointer );
writetofile ( count, commission );
count ++;
}
highlowoutput(selection, deptnum2, total2);
}
}
If anyones utterly bored enough to read over this program and find out why im getting garbage output you shall receive many internets <3
its compiles with no errors just gives rubbish output HALP 4chan !
#include <iostream>
#include <fstream>
#include <string>
#include <cstdlib>
class Sales
{
public:
void setSales( int d, double t );
double calcCommission( double );
int getNum() { return deptNum; }
double getTotal() { return dayTotal; }
private:
int deptNum;
double dayTotal;
};
string deptnumtoname ( int dept );
void Sales::setSales( int d, double t )
{
deptNum = d;
dayTotal = t;
}
double Sales::calcCommission( double total )
{
double percent;
if ( total <= 500 )
{
percent = 0.05;
}
else if ( total > 500 && total <= 2000 )
{
percent = 0.2;
}
else if ( total > 2000 && total <= 4000 )
{
percent = 0.25;
}
else if ( total > 4000 )
{
percent = 0.3;
}
return ( total * percent );
}
void writetofile( int line, double comm )
{
Sales salesdata;
string deptname;
int deptnumber = salesdata.getNum();
double totalsales = salesdata.getTotal();
deptname = deptnumtoname( deptnumber );
ofstream outfile;
outfile.open ("com_sales.txt");
if ( outfile.fail() )
{
cout << "error opening file" << endl;
outfile.close();
exit (1);
}
else {
outfile << line << deptname << totalsales << comm << "\n";
}
}
string deptnumtoname ( int dept )
{
string deptname;
switch (dept){
case 1:
deptname = "Toys";
break;
case 2:
deptname = "Homeware";
break;
case 3:
deptname = "Electricals";
break;
case 4:
deptname = "AudioEquipment";
break;
case 5:
deptname = "Music";
break;
case 6:
deptname = "DIY";
break;
case 7:
deptname = "LadiesClothing";
break;
case 8:
deptname = "MensClothing";
break;
case 9:
deptname = "ChildrensClothing";
break;
case 10:
deptname = "Seasonal";
break;
default:
deptname = "Null";
}
return deptname;
}
void highlow ( int selection, int& deptnumber, double& daytotal )
{
Sales salesdata;
int dept = salesdata.getNum();
double total = salesdata.getTotal();
double hightotal = 0;
int highdept;
double lowtotal = 500000;
int lowdept;
if ( total > hightotal )
{
hightotal = total;
highdept = dept;
}
else if ( total < lowtotal )
{
lowtotal = total;
lowdept = dept;
}
if ( selection == 1 )
{
deptnumber = highdept;
daytotal = highdept;
}
if ( selection == 2 )
{
deptnumber = lowdept;
daytotal = lowdept;
}
}
void highlowoutput( int selection, int deptnum, double total )
{
string deptname;
if ( selection == 1 )
{
deptname = deptnumtoname( deptnum );
cout << "The department with the lowest sales is: " << deptname << ", its sales were: " << total;
}
else if ( selection == 2 )
{
deptname = deptnumtoname( deptnum );
cout << "The department with the highest sales is: " << deptname << ", its sales were: " << total;
}
}
int main()
{
Sales salesdata;
int dept, count = 1, selection, deptnum2;
double total, commission, total2;
int * deptpointer;
double * totalpointer;
deptpointer = &deptnum2;
totalpointer = &total2;
cout << "Would you like to see the highest sales deparment or the lowest : enter 1 for highest, 2 for lowest: ";
cin >> selection;
ifstream infile;
infile.open("ica_sales.txt");
if ( infile.fail() )
{
cout << "error opening file" << endl;
infile.close();
exit (1);
}
else {
while ( ! infile.eof() )
{
infile >> dept;
infile >> total;
salesdata.setSales( dept, total );
commission = salesdata.calcCommission( total );
highlow( selection, *deptpointer, *totalpointer );
writetofile ( count, commission );
count ++;
}
highlowoutput(selection, deptnum2, total2);
}
}
If anyones utterly bored enough to read over this program and find out why im getting garbage output you shall receive many internets <3
its compiles with no errors just gives rubbish output HALP 4chan !