Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Master List
- 5 Mike Smith 2098.72
- 6 Sue Nathan 1234.32
- 100 Bobby Jones 519.69
- 125 Sally Mayer 345.74
- 200 Danny Glover 5623.18
- Transaction List
- 1 568.34
- 5 345.10
- 6 1012.43
- 17 2045.12
- 100 1231.00
- 101 167.39
- 125 5239.67
- #include <cstdlib>
- #include <iostream>
- #include <fstream>
- #include <string>
- using namespace std;
- // Pseudocode PLD Chapter 7 #6a pg. 301
- // Start
- // Declarations
- // InputFile masterFile;
- // InputFile transactionFile;
- // OutputFile newMasterFile;
- // num mClientNumber, mtotalClientCost, tClientNumber, titemClientCost
- // string mClientfName, mClientlName
- // output "Master File Updating Starting"
- // open masterFile "Master.rtf"
- // open transactionFile "Transaction.rtf"
- // open newMasterFile "newMaster.rtf"
- // read mClientNumber, mClientfName, mClientlName, mtotalClientCost from masterFile
- // read tClientNumber, titemClientCost from transactionFile
- // while ( transactionFile not EOF )
- // while (( masterFile not EOF) and (mClientNumber < tClientNumber))
- // output mClientNumber, mClientfName, mClientlName, mtotalClientCost to newMasterFile
- // read mClientNumber, mClientfName, mClientlName, mtotalClientCost from masterFile
- // endwhile
- // if (masterFile is EOF)
- // output "Error Client ID: ", tClientNumber, " not in Master File."
- // else if (mClientNumber == tClientNumber) then
- // mtotalClientCost = mtotalClientCost + titemClientCost
- // output mClientNumber, mClientfName, mClientlName, mtotalClientCost to newMasterFile
- // read mClientNumber, mClientfName, mClientlName, mtotalClientCost from masterFile
- // else if (mClientNumber > tClientNumber) then
- // output "Error Client ID: ", tClientNumber, " not in Master File."
- // endif
- // read tClientNumber, titemClientCost from transactionFile
- // endwhile
- // while (masterFile not EOF)
- // output mClientNumber, mClientfName, mClientlName, mtotalClientCost to newMasterFile
- // read mClientNumber, mClientfName, mClientlName, mtotalClientCost from masterFile
- // endwhile
- // output "Master File Updating Complete"
- // close masterFile
- // close transactionFile
- // close newMasterFile
- // Stop
- int main(int argc, char *argv[])
- {
- ifstream MasterFile;
- ifstream TransactionFile;
- ofstream New_MasterFile;
- int mClientNumber;
- double mtotalClientCost;
- int tClientNumber;
- double titemClientCost;
- string mClientfName;
- string mClientlName;
- cout << "Master File Updating Starting" << endl;
- MasterFile.open("Master.txt");
- TransactionFile.open("Transaction.txt");
- New_MasterFile.open("newMaster.txt");
- MasterFile >> mClientNumber;
- MasterFile >> mClientfName;
- MasterFile >> mtotalClientCost;
- MasterFile >> mClientlName;
- TransactionFile >> tClientNumber;
- TransactionFile >> titemClientCost;
- while(!TransactionFile.eof())
- {
- while (( !MasterFile.eof()) and (mClientNumber < tClientNumber))
- {
- New_MasterFile << mClientNumber;
- New_MasterFile << mClientfName;
- New_MasterFile << mClientlName;
- New_MasterFile << mtotalClientCost;
- MasterFile >> mClientNumber;
- MasterFile >> mClientfName;
- MasterFile >> mClientlName;
- MasterFile >> mtotalClientCost;
- }
- if (!MasterFile.eof())
- {
- cout << "ERROR Client ID: " << tClientNumber << " not in Master File. " ;
- }
- else if (mClientNumber == tClientNumber)
- {
- mtotalClientCost = mtotalClientCost + titemClientCost;
- New_MasterFile << mClientNumber;
- New_MasterFile << mClientfName;
- New_MasterFile << mClientlName;
- New_MasterFile << mtotalClientCost;
- MasterFile >> mClientNumber;
- MasterFile >> mClientfName;
- MasterFile >> mClientlName;
- MasterFile >> mtotalClientCost;
- }
- else if (mClientNumber > tClientNumber)
- {
- cout << "Error Client ID: ", tClientNumber, " not in Master File.";
- }
- TransactionFile >> tClientNumber;
- TransactionFile >> titemClientCost;
- }
- while (!MasterFile.eof())
- {
- New_MasterFile << mClientNumber;
- New_MasterFile << mClientfName;
- New_MasterFile << mClientlName;
- New_MasterFile << mtotalClientCost;
- MasterFile >> mClientNumber;
- MasterFile >> mClientfName;
- MasterFile >> mClientlName;
- MasterFile >> mtotalClientCost;
- }
- cout << "Master File Updating Complete " << endl;
- MasterFile.close();
- TransactionFile.close();
- New_MasterFile.close();
- system("PAUSE");
- return 0;
- }
- Master File Updating Starting
- ERROR Client ID: 1 not in Master File.
- ERROR Client ID: 5 not in Master File.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement