peachy900757
January 13th, 2007, 02:08 PM
i am doing very basic c++ at uni but i am finding it quite difficult!
i have an assessment but i am slightly stuck on a part of it!
what i need to do is create a basic sales program. what it needs to do is read a file, write to a file, find highest and lowest data! i have managed to get to the reading of the file but finding the highest and lowest sales figure i am struggling on!
this is the code i have so far!
#include <iostream>
#include <fstream>
using namespace std;
int sales_data();
int save_data();
int main()
{
int num;
cout << "MAIN MENU" << endl;
cout << "\nEnter a number between 1 and 3" << endl;
cout << "\n-----------------------------" << endl;
cout << "1. View Sales Details" << endl;
cout << "2. Export and Save Sales Details" << endl;
cout << "3. Exit" << endl;
cout << "-----------------------------" << endl;
cin >> num;
switch(num)
{
case 1:
system("CLS");
sales_data();
break;
case 2:
system("CLS");
save_data();
break;
case 3:
system("exit");
break;
default:
cout << "Incorrect Number" << endl;
break;
}
}
int sales_data()
{
int num;
int depid;
double sales;
ifstream salesfile ("ica_sales.txt");
if (salesfile.is_open())
{
cout << "SALES DATA\n" << endl;
while (! salesfile.eof() )
{
salesfile >> depid >> sales;
cout << depid << "\t" << sales << endl;
}
salesfile.close();
}
else cout << "Unable to open file" << endl;
cout << "\nSALES MENU" << endl;
cout << "\nEnter a number between 1 and 4" << endl;
cout << "\n-----------------------------" << endl;
cout << "1. View Highest Department" << endl;
cout << "2. View Lowest Department" << endl;
cout << "3. Back to main" << endl;
cout << "4. Exit" << endl;
cout << "-----------------------------" << endl;
cin >> num;
switch(num)
{
case 1:
break;
case 2:
break;
case 3:
system("CLS");
main();
break;
case 4:
system("exit");
break;
default:
cout << "Incorrect Number" << endl;
break;
}
return 0;
}
int save_data()
{
int num;
cout << "Enter a number between 1 and 4" << endl;
cout << "-----------------------------" << endl;
cout << "1. Dont no what i need in here yet!!!" << endl;
cout << "2. Back to Main" << endl;
cout << "3. Exit" << endl;
cout << "-----------------------------" << endl;
cin >> num;
switch(num)
{
case 1:
break;
case 2:
system("CLS");
main();
break;
case 3:
system("exit");
break;
default:
cout << "Incorrect Number" << endl;
break;
}
return 0;
}
---------------------------
this is what the text file looks like:-
01 633.79
02 2242.03
06 4587.12
08 2318.98
05 565.32
07 865.99
03 6591.96
04 1974.90
09 453.33
what i need to do is display the highest and the lowest figures (which are going to change regulary)!
Cheers peachy
srry if its a bit confusing
i have an assessment but i am slightly stuck on a part of it!
what i need to do is create a basic sales program. what it needs to do is read a file, write to a file, find highest and lowest data! i have managed to get to the reading of the file but finding the highest and lowest sales figure i am struggling on!
this is the code i have so far!
#include <iostream>
#include <fstream>
using namespace std;
int sales_data();
int save_data();
int main()
{
int num;
cout << "MAIN MENU" << endl;
cout << "\nEnter a number between 1 and 3" << endl;
cout << "\n-----------------------------" << endl;
cout << "1. View Sales Details" << endl;
cout << "2. Export and Save Sales Details" << endl;
cout << "3. Exit" << endl;
cout << "-----------------------------" << endl;
cin >> num;
switch(num)
{
case 1:
system("CLS");
sales_data();
break;
case 2:
system("CLS");
save_data();
break;
case 3:
system("exit");
break;
default:
cout << "Incorrect Number" << endl;
break;
}
}
int sales_data()
{
int num;
int depid;
double sales;
ifstream salesfile ("ica_sales.txt");
if (salesfile.is_open())
{
cout << "SALES DATA\n" << endl;
while (! salesfile.eof() )
{
salesfile >> depid >> sales;
cout << depid << "\t" << sales << endl;
}
salesfile.close();
}
else cout << "Unable to open file" << endl;
cout << "\nSALES MENU" << endl;
cout << "\nEnter a number between 1 and 4" << endl;
cout << "\n-----------------------------" << endl;
cout << "1. View Highest Department" << endl;
cout << "2. View Lowest Department" << endl;
cout << "3. Back to main" << endl;
cout << "4. Exit" << endl;
cout << "-----------------------------" << endl;
cin >> num;
switch(num)
{
case 1:
break;
case 2:
break;
case 3:
system("CLS");
main();
break;
case 4:
system("exit");
break;
default:
cout << "Incorrect Number" << endl;
break;
}
return 0;
}
int save_data()
{
int num;
cout << "Enter a number between 1 and 4" << endl;
cout << "-----------------------------" << endl;
cout << "1. Dont no what i need in here yet!!!" << endl;
cout << "2. Back to Main" << endl;
cout << "3. Exit" << endl;
cout << "-----------------------------" << endl;
cin >> num;
switch(num)
{
case 1:
break;
case 2:
system("CLS");
main();
break;
case 3:
system("exit");
break;
default:
cout << "Incorrect Number" << endl;
break;
}
return 0;
}
---------------------------
this is what the text file looks like:-
01 633.79
02 2242.03
06 4587.12
08 2318.98
05 565.32
07 865.99
03 6591.96
04 1974.90
09 453.33
what i need to do is display the highest and the lowest figures (which are going to change regulary)!
Cheers peachy
srry if its a bit confusing