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

How do I input a schedule and save a schedule to a file for the following code:

ID: 638502 • Letter: H

Question

How do I input a schedule and save a schedule to a file for the following code:

#include<iostream>
#include<iomanip>
#include<fstream>
using namespace std;
void set(char[][4],char[][4],char);
void output(char[][4],string);
void individual(char[][4],char[][4]);
void group(char[][4],char[][4]);
void getinfo(int&,int&,int&);
const int COLS = 4;
const int ROWS = 4;
int main()

{char jeff[4][4],anna[4][4];
int i,j; //variables
int choice=0;
for(i=0;i<4;i++)
   for(j=0;j<4;j++)
       {anna[i][j]='F';
       jeff[i][j]='F';
       }
while(choice!=6)
    {cout<<"Choose what you would like to do: ";
     cout<<"1 Mark time slot busy ";
     cout<<"2 Mark time slot free ";
     cout<<"3 Output timeschedule ";
     cout<<"4 Output timeslots for individual lessons ";
     cout<<"5 Output timeslots for group lessons ";
     cout<<"6 Exit ";
      cin>>choice;
     switch(choice)
        {case 1:    set(anna,jeff,'X');
                   break;
         case 2:    set(anna,jeff,'F');
                   break;
         case 3:    output(anna,"ANNA");
                    output(jeff,"JEFF");
                    break;
         case 4:   individual(anna,jeff);
                   break;
         case 5:   group(anna,jeff);
                   break;
         case 6:     return 0;
        default:    cout<<"Illegal input: TryAgain ";
       }

       }

return 0;
}
void getinfo(int& who,int& day,int& slot)
{cout<<"Enter 1 for Anna, 2 for Jeff: ";
cin>>who;

while(who<1||who>2)
   {
   cout<<"Invalid try again. ";
   cout<<"Enter 1 for Anna, 2 for Jeff: ";
   cin>>who;
   }
slot=5;

   {
    cout<<"Enter timeslot: ";
    cout<<"0 for 11-12 ";
    cout<<"1 for 12-1 ";
    cout<<"2 for 1-2 ";
    cout<<"3 for 2-3 ";
    cin>>slot;
    if(slot<0||slot>3)
        cout<<"Invalid entry ";
   }
day=5;
while(day<0||day>3)
   {
    cout<<"Enter day: ";
    cout<<"0 for Monday ";
    cout<<"1 for Tuesday ";
    cout<<"2 for Wednesday ";
    cout<<"3 for Thursday ";
    cin>>day;
    if(day<0||day>3)
        cout<<"Invalidentry ";
   }
}
void set(char a[][4],char j[][4],char what)
{int who,day,slot;
   getinfo(who,day,slot);
   if(who==1)
       a[slot][day]=what;
   else
       j[slot][day]=what;

}
//Function for Output
void output(char p[][4],string name)
{int i,j;

cout<<endl<<setw(10)<<name<<"   Monday Tuesday Wednesday Thursday ";
for (i=0;i<4;i++)
{cout<<setw(2)<<(i-1+11)%12+1<<"-"<<(i-1+12)%12+1;
    for(j=0;j<4;j++)
      cout<<setw(11)<<p[i][j];
    cout<<endl;
   }
   cout<<endl;
}
//Function for free for Individual Lessons
void individual(char a[][4],char je[][4])
{char free[4][4];
int i,j;
for(i=0;i<4;i++)
   for(j=0;j<4;j++)
       if(a[i][j]== 'F'||je[i][j]=='F')
          free[i][j]='X';
       else
          free[i][j]='F';
output(free,"Available");
}

//Function for available for group lessons
void group(char a[][4],char je[][4])
{char free[4][4];
int i,j;
for(i=0;i<4;i++)
   for(j=0;j<4;j++)
       if(a[i][j]=='F'&&je[i][j]=='F')
          free[i][j]='X';
       else
          free[i][j]='F';
output(free,"Available");
}

Explanation / Answer

// SaveTheSchedules.cpp : Defines the entry point for the console application.

//

#include "stdafx.h"

#include <iostream>

#include <iomanip>

#include <string>

#include <fstream>

using namespace std;

using namespace std;

void set(char[][4],char[][4],char);

void output(char[][4],string);

void outputtoFile(char p[][4],string name);

void individual(char[][4],char[][4]);

void group(char[][4],char[][4]);

void getinfo(int&,int&,int&);

const int COLS = 4;

const int ROWS = 4;

int main()

{

    char jeff[4][4],anna[4][4];

    int i,j; //variables

    int choice=0;

    for(i=0;i<4;i++)

    {

         for(j=0;j<4;j++)

         {

             anna[i][j]='F';

             jeff[i][j]='F';

         }

    }

    while(choice!=6)

    {

         cout<<"Choose what you would like to do: ";

         cout<<"1 Mark time slot busy ";

         cout<<"2 Mark time slot free ";

         cout<<"3 Output timeschedule ";

         cout<<"4 Output timeslots for individual lessons ";

         cout<<"5 Output timeslots for group lessons ";

         cout<<"6 Exit ";

         cin>>choice;

         switch(choice)

         {

         case 1:   

             set(anna,jeff,'X');

             break;

         case 2:   

             set(anna,jeff,'F');

             break;

         case 3:   

             output(anna,"ANNA");

             outputtoFile(anna,"ANNA");

             output(jeff,"JEFF");

             outputtoFile(jeff,"JEFF");

             break;

         case 4:  

             individual(anna,jeff);

             break;

         case 5:  

             group(anna,jeff);

             break;

         case 6:    

             return 0;

         default:  

             cout<<"Illegal input: TryAgain ";

         }

    }

    return 0;

}

void getinfo(int& who,int& day,int& slot)

{

    cout<<"Enter 1 for Anna, 2 for Jeff: ";

    cin>>who;

    while(who<1||who>2)

    {

         cout<<"Invalid try again. ";

         cout<<"Enter 1 for Anna, 2 for Jeff: ";

         cin>>who;

    }

    slot=5;

    {

         cout<<"Enter timeslot: ";

         cout<<"0 for 11-12 ";

         cout<<"1 for 12-1 ";

         cout<<"2 for 1-2 ";

         cout<<"3 for 2-3 ";

         cin>>slot;

         if(slot<0||slot>3)

             cout<<"Invalid entry ";

    }

    day=5;

    while(day<0||day>3)

    {

         cout<<"Enter day: ";

         cout<<"0 for Monday ";

         cout<<"1 for Tuesday ";

         cout<<"2 for Wednesday ";

         cout<<"3 for Thursday ";

         cin>>day;

         if(day<0||day>3)

             cout<<"Invalidentry ";

    }

}

void set(char a[][4],char j[][4],char what)

{

    int who,day,slot;

    getinfo(who,day,slot);

    if(who==1)

         a[slot][day]=what;

    else

         j[slot][day]=what;

}

//Function for Output

void output(char p[][4],string name)

{

    int i,j;

    cout<<endl<<setw(10)<<name<<"   Monday Tuesday Wednesday Thursday ";

    for (i=0;i<4;i++)

    {

         cout<<setw(2)<<(i-1+11)%12+1<<"-"<<(i-1+12)%12+1;

         for(j=0;j<4;j++)

             cout<<setw(11)<<p[i][j];

         cout<<endl;

    }

    cout<<endl;

}

//Function for free for Individual Lessons

void individual(char a[][4],char je[][4])

{

    char free[4][4];

    int i,j;

    for(i=0;i<4;i++)

         for(j=0;j<4;j++)

             if(a[i][j]== 'F'||je[i][j]=='F')

                 free[i][j]='X';

             else

                 free[i][j]='F';

    output(free,"Available");

    outputtoFile(free,"Available");

}

//Function for available for group lessons

void group(char a[][4],char je[][4])

{

    char free[4][4];

    int i,j;

    for(i=0;i<4;i++)

         for(j=0;j<4;j++)

             if(a[i][j]=='F'&&je[i][j]=='F')

                 free[i][j]='X';

             else

                 free[i][j]='F';

    output(free,"Available");

    outputtoFile(free,"Available");

}

//Function for Output

void outputtoFile(char p[][4],string name)

{

    int i,j;

    ofstream mySchedule;

    if(name.compare("ANNA")==0)

         mySchedule.open("AnnaSchedule.txt");

    else if(name.compare("JEFF")==0)

         mySchedule.open("JeffSchedule.txt");

    else

         mySchedule.open("Schedule.txt");

   

    if(mySchedule)

    {

         //mySchedule<<name1<<endl;

         mySchedule<<endl<<setw(10)<<name<<" Monday Tuesday Wednesday Thursday ";

         for (i=0;i<4;i++)

         {

             mySchedule<<setw(2)<<(i-1+11)%12+1<<"-"<<(i-1+12)%12+1;

             for(j=0;j<4;j++)

                 mySchedule<<setw(11)<<p[i][j];

             mySchedule<<endl;

         }

         mySchedule<<endl;

    }

    else

    {

         cout<<"Sorry! Unable to write to the file. ";

    }

}

Sample Output text files:

Schedule.txt

Available Monday Tuesday Wednesday Thursday

11-12          X          X          X          X

12-1          X          X          X          X

1-2          X          X          X          X

2-3          X          X          X          X

AnnaSchedule.txt

      ANNA Monday Tuesday Wednesday Thursday

11-12          F          F          F          F

12-1          F          F          F          F

1-2          F          F          F          F

2-3          F          F          F          F

JeffSchedule.txt

      JEFF Monday Tuesday Wednesday Thursday

11-12          F          F          F          F

12-1          F          F          F          F

1-2          F          F          F          X

2-3          F          F          F          F

Sample Output:

Choose what you would like to do:

1 Mark time slot busy

2 Mark time slot free

3 Output timeschedule

4 Output timeslots for individual lessons

5 Output timeslots for group lessons

6 Exit

1

Enter 1 for Anna, 2 for Jeff: 2

Enter timeslot:

0 for 11-12

1 for 12-1

2 for 1-2

3 for 2-3

2

Enter day:

0 for Monday

1 for Tuesday

2 for Wednesday

3 for Thursday

3

Choose what you would like to do:

1 Mark time slot busy

2 Mark time slot free

3 Output timeschedule

4 Output timeslots for individual lessons

5 Output timeslots for group lessons

6 Exit

3

      ANNA   Monday Tuesday Wednesday Thursday

11-12          F          F          F          F

12-1          F          F          F          F

1-2          F          F          F          F

2-3          F          F          F          F

      JEFF   Monday Tuesday Wednesday Thursday

11-12          F          F          F          F

12-1          F          F          F          F

1-2          F          F          F          X

2-3          F          F          F          F

Choose what you would like to do:

1 Mark time slot busy

2 Mark time slot free

3 Output timeschedule

4 Output timeslots for individual lessons

5 Output timeslots for group lessons

6 Exit

1

Enter 1 for Anna, 2 for Jeff: 2

Enter timeslot:

0 for 11-12

1 for 12-1

2 for 1-2

3 for 2-3

0

Enter day:

0 for Monday

1 for Tuesday

2 for Wednesday

3 for Thursday

1

Choose what you would like to do:

1 Mark time slot busy

2 Mark time slot free

3 Output timeschedule

4 Output timeslots for individual lessons

5 Output timeslots for group lessons

6 Exit

4

Available   Monday Tuesday Wednesday Thursday

11-12          X          X          X          X

12-1          X          X          X          X

1-2          X          X          X          X

2-3          X          X          X          X

Choose what you would like to do:

1 Mark time slot busy

2 Mark time slot free

3 Output timeschedule

4 Output timeslots for individual lessons

5 Output timeslots for group lessons

6 Exit

Note:

The code is added and it is highlighted with bold letters. At the same time, the individual file output schedule files are also provided.

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