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

Please help me with this C++ assignment! RIGHTMOST CHAR CHALLENGE DESCRIPTION: Y

ID: 3834386 • Letter: P

Question

Please help me with this C++ assignment!

RIGHTMOST CHAR

CHALLENGE DESCRIPTION:

You are given a string 'S' and a character 't'. Print out the position of the rightmost occurrence of 't' (case matters) in 'S' or -1 if there is none. The position to be printed out is zero based.

INPUT SAMPLE:

The first argument will be a path to a filename (e.g. the program was executed with >>> ./a.out input.txt <<<<< ), containing a string and a character, comma delimited, one per line. Ignore all empty lines in the input file. E.g.

OUTPUT SAMPLE:

Print out the zero based position of the character 't' in string 'S', one per line. Do NOT print out empty lines between your output.
E.g.

Explanation / Answer

#include <iostream>
#include <fstream>

using namespace std;

int getRightIndex(string line, char c)
{
for(int i = line.length() -1; i >= 0; i--)
{
if(line[i] == c)
return i;
}
return -1;
}

int main(int argc, char *argv[])
{
if(argc != 2)
{
cout << "Input file is not specified" << endl;
return 1;
}
ifstream in(argv[1]);
  
string line;
while(getline(in, line, ','))
{
if(line.empty())
{
continue;
}
string c;
  
getline(in, c);
int pos = getRightIndex(line, c[0]);
cout << pos<< endl;
  
}

return 0;
}

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