C++: can somebody help delete all of this in my program: //#include <cstring> //
ID: 3603563 • Letter: C
Question
C++:
can somebody help delete all of this in my program:
//#include <cstring>
//#include <cctype>
//#include <cstdlib>
The main idea of this Assignment to remove all of the above and only to write and using Strings only No c-string functions or stringstream (or istringstream or ostringstream) I tried but kept giving me so many errors and I couldn't fix em.
My code:
#include <iostream>
#include <fstream>
#include <cstring>
#include <cctype>
#include <cstdlib>
using namespace std;
int main()
{
const char filename[] = "input.txt";
char buffer[16], winner[32], loser[32];
int winnerScore, loserScore;
ifstream fin(filename);
if (!fin)
{
cerr << "Unable to open file " << filename << endl;
exit(1);
}
while (!fin.eof())
{
// get winner
fin >> winner;
if (fin.eof()) break;
// get next token. Could be score or 2nd part of winner name
fin >> buffer;
// If buffer has a comma, then it's a score
if (strchr(buffer,','))
{
winnerScore = atoi(strtok(buffer,","));
}
else
{
strcat(winner," ");
strcat(winner,buffer);
fin >> buffer;
winnerScore = atoi(strtok(buffer,","));
}
// get loser
fin >> loser;
// get next token. Could be score or 2nd part of loser name
fin >> buffer;
// If first digit is numeric, then it's a score
if (isdigit(buffer[0]))
{
loserScore = atoi(buffer);
}
else
{
strcat(loser," ");
strcat(loser,buffer);
fin >> buffer;
loserScore = atoi(buffer);
}
cout << winner << " over " << loser << ' ' << winnerScore << " to " << loserScore << endl;
}
}
Input File
Output File should look exactly like this.
Cincinnati 27, Buffalo 24Detroit 31, Cleveland 17
Kansas City 24, Oakland 7
Carolina 35, Minnesota 10
Pittsburgh 19, NY Jets 6
Philadelphia 31, Tampa Bay 20
Green Bay 19, Baltimore 17
St. Louis 38, Houston 13
Denver 35, Jacksonville 19
Seattle 20, Tennessee 13
New England 30, New Orleans 27
San Francisco 32, Arizona 20
Dallas 31, Washington 16
Explanation / Answer
#include <iostream>
#include <fstream>
#include <cstring>
#include <cctype>
#include <cstdlib>
using namespace std;
int main()
{
const char filename[] = "input.txt";
char buffer[16], winner[32], loser[32];
int winnerScore, loserScore;
ifstream fin(filename);
if (!fin)
{
cerr << "Unable to open file " << filename << endl;
exit(1);
}
while (!fin.eof())
{
// get winner
fin >> winner;
if (fin.eof()) break;
// get next token. Could be score or 2nd part of winner name
fin >> buffer;
// If buffer has a comma, then it's a score
if (strchr(buffer,','))
{
winnerScore = atoi(strtok(buffer,","));
}
else
{
strcat(winner," ");
strcat(winner,buffer);
fin >> buffer;
winnerScore = atoi(strtok(buffer,","));
}
// get loser
fin >> loser;
// get next token. Could be score or 2nd part of loser name
fin >> buffer;
// If first digit is numeric, then it's a score
if (isdigit(buffer[0]))
{
loserScore = atoi(buffer);
}
else
{
strcat(loser," ");
strcat(loser,buffer);
fin >> buffer;
loserScore = atoi(buffer);
}
cout << winner << " over " << loser << ' ' << winnerScore << " to " << loserScore << endl;
}
}
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.