I'm having a problem with the if loop. My program should display a warning sign and skip an incomplete a bad record the user has enter that otherwise would have been displayed in an invoice.
for example: if the user enters the following 3 lines when reading purchased items
o P010001 2 whatever
o P010002
o 1
the "whatever" bits there will be ignored because a purchased item record just needs the first 2 fields, the productId P010001 and the quantity 2, so the rest of the same line is ignored. The next 2 lines actually contain 2 bad item records because each single line contains an incomplete record and is thus considered an invalid record. The program should skip such bad records with a warning message.
This is what i did
while (option == "\\ItemPrice")
{
cerr << "Enter ItemId followed by space and then price or \\ItemOrder to end this list: ";
cin >> item;
if (item == "ItemId" && item == "price")
cin>> item;
else
{
cerr << "Warning: This record is incomplete"//take a new line
<< "\n""Enter ItemId followed by space and then price or \\ItemOrder to end this list:"
<<endl;
}
But it seems that the statement i wrote in the if brackets is wrong as my program displays the warning message even though i enter the full record.
Please give me an idea of what i should write in the brackets and please tell me if i'm using the wrong loop.