Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Why is this file giving an error? I\'m not sure what I\'m looking for. It seems

ID: 3915775 • Letter: W

Question

Why is this file giving an error? I'm not sure what I'm looking for. It seems that all the syntax is correct. What am I looking for that is incorrect?

#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main()

{

// Start
//     Declarations
//         InputFile masterFile;
   ifstream masterFile;
   
//         InputFile transactionFile;
   ifstream transactionFile;
   
//         OutputFile newMasterFile;
   ofstream newMasterFile;
   
//         num mClientNumber, mtotalClientCost, tClientNumber, titemClientCost
   int mClientNumber, tClientNumber;
   
   double mtotalClientCost, titemClientCost;
   
//         string mClientfName, mClientlName
   string mClientfName, mClientlName;
   
//     output "Master File Updating Starting"
  cout << "Master File Updating Starting" << endl;
  
//     open masterFile "Master.rtf"
  masterFile.open("Master.rtf");
  
//     open transactionFile "Transaction.rtf"
  transactionFile.open("Transaction.rtf");
  
//     open newMasterFile "newMaster.rtf"
  newMasterFile.open("newMaster.rtf");
  
//     read mClientNumber, mClientfName, mClientlName, mtotalClientCost from masterFile
  masterFile >> mClientNumber >> mClientfName >> mClientlName >> mtotalClientCost;
  
//     read tClientNumber, titemClientCost from transactionFile
  transactionFile >> tClientNumber >> titemClientCost;
  
  
//     while ( transactionFile not EOF )
  while(!(transactionFile.eof()))
  
  {
//         while (( masterFile not EOF) and (mClientNumber < tClientNumber))
   while((!(masterFile.eof())) && (mClientNumber < tClientNumber))
   
   {
//             output mClientNumber, mClientfName, mClientlName, mtotalClientCost to newMasterFile
    newMasterFile << mClientNumber << mClientfName << mClientlName << mtotalClientCost << endl;
    
//             read mClientNumber, mClientfName, mClientlName, mtotalClientCost from masterFile
    masterFile >> mClientNumber >> mClientfName >> mClientlName >> mtotalClientCost;
    
//         endwhile
   }
//         if (masterFile is EOF)
   if(masterFile.eof())
   {
//             output "Error Client ID: ", tClientNumber, " not in Master File."
    cout << "Error Client ID: " << tClientNumber << "not in Master File." << endl;
   
//              else if (mClientNumber == tClientNumber) then
       else if (mClientNumber == tClientNumber)
       {
//                  mtotalClientCost = mtotalClientCost + titemClientCost
        mtotalClientCost = mtotalClientCost + titemClientCost;
    
//                  output mClientNumber, mClientfName, mClientlName, mtotalClientCost to newMasterFile
        newMasterFile << mClientNumber << mClientfName << mClientlName << mtotalClientCost << endl;
    
//                  read mClientNumber, mClientfName, mClientlName, mtotalClientCost from masterFile
        masterFile >> mClientNumber >> mClientfName >> mClientlName >> mtotalClientCost;
       }
//             else if (mClientNumber > tClientNumber) then
       else if (mClientNumber > tClientNumber)
       {
//                  output "Error Client ID: ", tClientNumber, " not in Master File."
        cout << "Error Client ID: " << tClientNumber << "not in Master File." << endl;
       }
//          endif
   }
//         read tClientNumber, titemClientCost from transactionFile
   transactionFile >> tClientNumber >> titemClientCost;
//     endwhile
  }
//     while (masterFile not EOF)
  while (!(masterFile.eof()))
  {
//         output mClientNumber, mClientfName, mClientlName, mtotalClientCost to newMasterFile
   newMasterFile << mClientNumber << mClientfName << mClientlName << mtotalClientCost << endl;
   
//         read mClientNumber, mClientfName, mClientlName, mtotalClientCost from masterFile
   masterFile >> mClientNumber >> mClientfName >> mClientlName >> mtotalClientCost;
   
//     endwhile
  }
//     output "Master File Updating Complete"
  cout << "Master File Updating Complete" << endl;
  
//     close masterFile
  masterFile.close();
  
//     close transactionFile
  transactionFile.close();
  
//     close newMasterFile
  newMasterFile.close();
  
// Stop
return 0;//Stop

}

Explanation / Answer

//Hey you just started an else if clause without an if clause.This is the clause that you have started "if (mClientNumber == tClientNumber)".Thank you.If there are any doubts for you, comment below.Here's the the after modifying

#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main()

{

// Start
// Declarations
// InputFile masterFile;
ifstream masterFile;

// InputFile transactionFile;
ifstream transactionFile;

// OutputFile newMasterFile;
ofstream newMasterFile;

// num mClientNumber, mtotalClientCost, tClientNumber, titemClientCost
int mClientNumber, tClientNumber;

double mtotalClientCost, titemClientCost;

// string mClientfName, mClientlName
string mClientfName, mClientlName;

// output "Master File Updating Starting"
cout << "Master File Updating Starting" << endl;
  
// open masterFile "Master.rtf"
masterFile.open("Master.rtf");
  
// open transactionFile "Transaction.rtf"
transactionFile.open("Transaction.rtf");
  
// open newMasterFile "newMaster.rtf"
newMasterFile.open("newMaster.rtf");
  
// read mClientNumber, mClientfName, mClientlName, mtotalClientCost from masterFile
masterFile >> mClientNumber >> mClientfName >> mClientlName >> mtotalClientCost;
  
// read tClientNumber, titemClientCost from transactionFile
transactionFile >> tClientNumber >> titemClientCost;
  
  
// while ( transactionFile not EOF )
while(!(transactionFile.eof()))
  
{
// while (( masterFile not EOF) and (mClientNumber < tClientNumber))
while((!(masterFile.eof())) && (mClientNumber < tClientNumber))

{
// output mClientNumber, mClientfName, mClientlName, mtotalClientCost to newMasterFile
newMasterFile << mClientNumber << mClientfName << mClientlName << mtotalClientCost << endl;
  
// read mClientNumber, mClientfName, mClientlName, mtotalClientCost from masterFile
masterFile >> mClientNumber >> mClientfName >> mClientlName >> mtotalClientCost;
  
// endwhile
}
// if (masterFile is EOF)
if(masterFile.eof())
{
// output "Error Client ID: ", tClientNumber, " not in Master File."
cout << "Error Client ID: " << tClientNumber << "not in Master File." << endl;

// else if (mClientNumber == tClientNumber) then
if (mClientNumber == tClientNumber)
{
// mtotalClientCost = mtotalClientCost + titemClientCost
mtotalClientCost = mtotalClientCost + titemClientCost;
  
// output mClientNumber, mClientfName, mClientlName, mtotalClientCost to newMasterFile
newMasterFile << mClientNumber << mClientfName << mClientlName << mtotalClientCost << endl;
  
// read mClientNumber, mClientfName, mClientlName, mtotalClientCost from masterFile
masterFile >> mClientNumber >> mClientfName >> mClientlName >> mtotalClientCost;
}
// else if (mClientNumber > tClientNumber) then
else if (mClientNumber > tClientNumber)
{
// output "Error Client ID: ", tClientNumber, " not in Master File."
cout << "Error Client ID: " << tClientNumber << "not in Master File." << endl;
}
// endif
}
// read tClientNumber, titemClientCost from transactionFile
transactionFile >> tClientNumber >> titemClientCost;
// endwhile
}
// while (masterFile not EOF)
while (!(masterFile.eof()))
{
// output mClientNumber, mClientfName, mClientlName, mtotalClientCost to newMasterFile
newMasterFile << mClientNumber << mClientfName << mClientlName << mtotalClientCost << endl;

// read mClientNumber, mClientfName, mClientlName, mtotalClientCost from masterFile
masterFile >> mClientNumber >> mClientfName >> mClientlName >> mtotalClientCost;

// endwhile
}
// output "Master File Updating Complete"
cout << "Master File Updating Complete" << endl;
  
// close masterFile
masterFile.close();
  
// close transactionFile
transactionFile.close();
  
// close newMasterFile
newMasterFile.close();
  
// Stop
return 0;//Stop

}

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote