У меня небольшая проблема.У меня есть три файла: OldMaster, Transaction и NewMaster.Если номера счетов совпадают между OldMaster и Transaction, я обновляю баланс и записываю его в NewMaster.Если они не совпадают, я записываю исходную информацию учетной записи из OldMaster в NewMaster и отображаю ошибку.
В файле OldMaster 4 учетных записи и 4 транзакции учетной записи в файле транзакции.По какой-то причине моя программа не обрабатывает четвертую (последнюю) учетную запись / транзакцию в каждом файле, а NewMaster не получает данные.
int accountNumber
int accountNum;
string lastName;
string firstName;
float currentBalance;
float dollarAmount;
inOldMaster >> accountNumber >> firstName >> lastName >> currentBalance;
inTransaction >> accountNum >> dollarAmount;
while ( !inOldMaster.eof() && !inTransaction.eof() )
{
if ( accountNumber == accountNum )
{
currentBalance += dollarAmount;
outNewMaster << accountNum << " " << firstName << " " << lastName << " "
<< currentBalance << endl;
}
else if (accountNumber != accountNum)
{
outNewMaster << accountNumber << " " << firstName << " " << lastName << " "
<< currentBalance << endl;
cout << "Unmatched transaction record for account number: " << accountNum
<< endl;
}
inOldMaster >> accountNumber >> firstName >> lastName >> currentBalance;
inTransaction >> accountNum >> dollarAmount;
}