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

[C++] URGENT. still stuck THIS IS LINK TO MY PREVIOUS QUESTION: https://www.cheg

ID: 3601649 • Letter: #

Question

[C++] URGENT. still stuck THIS IS LINK TO MY PREVIOUS QUESTION: https://www.chegg.com/homework-help/questions-and-answers/c-program-works-way-want--trying-get-program-output-look-like-picture-posted-program-menu--q24587692

#include
#include "Item.h"
#include "Queue.h"
using namespace std;

int main()
{
cout<<"Welcome to TODO List Manager! ";
Queue *queues=new Queue[10];
Item *items=new Item[10];
Queue A;
Item B;
char choice= A.menu();
while(choice != '5')
{

switch(choice)
{
case '1':
for (int i =0;i<10; i++){
queues[i].enqueue(queues[i].name);
}
break;
case '2': queues[10].display();
break;
case '3':
for (int i=0; i < 10; i++){
items[i].getTask();
items[i].getDesc();
items[i].setTask(items[i].taskName);
items[i].setDesc(items[i].taskDesc);
items[i].addNode(items[i].taskName,items[i].taskDesc);
}

break;
case '4':
for (int i=0; i < 10; i++){
items[i].deleteNode(items[i].taskName,items[i].taskDesc);
}
break;
default: cout << "System exit ";
}
}
}

THIS IS CODE FROM MY PREVIOUS QUESTION..

[Queue.cpp]

#ifndef QUEUE_H_INCLUDED
#define QUEUE_H_INCLUDED

using namespace std;


class Queue{

private:
struct Node {
char *name;
Node* next;
};
public:
Node *front, *rear;
Queue();
~Queue();
void enqueue(char*);
void dequeue(char*);
void display();
char name[10];
char menu();
};

#endif // QUEUE_H_INCLUDED

[Queue.cpp]

#include "Queue.h"
#include "Item.h"
#include <iostream>
#include <stdlib.h>

using namespace std;

Queue::Queue(){
front = NULL;
rear = NULL;
}

Queue::~Queue(){
while(front!=NULL){
Node *temp=front;
front=front->next;
delete temp;
}
rear = NULL;
}

void Queue::enqueue(char *n){
Node* temp= new Node;
if (temp == NULL){
cout <<"List is full"<<endl;
return;
}
cout << "Enter family member's name: ";
cin.getline(name, 10, ' ');
temp->name = n;
temp->next = NULL;
/*
if (cin >> '3'){
Item itemA;
itemA.getTask();
itemA.getDesc();
itemA.setTask(itemA.taskName);
itemA.setDesc(itemA.taskDesc);
itemA.addNode(itemA.taskName,itemA.taskDesc);
}
*/
if (front== NULL){
front = rear;
rear = temp;
} else {
rear-> next = temp;
rear = temp;
}
cout << n << endl;
}

void Queue::dequeue(char *d){
if (front == NULL){
cout <<"There is nothing to remove." << endl;
return;
}
cout << front->name<<"was removed from the list"<< endl;
if (front == rear){
front = rear;
rear = NULL;
} else {
front = front->next;
}
}

void Queue::display(){
if(front ==NULL){
cout << "Your To-Do list is empty." << endl;
return;
}
Node *temp=front;
while(temp){
cout << temp -> name << " ";
temp = temp-> next;
Item itemB;
itemB.printList();
}
cout << endl;
}

char Queue::menu(){
char choice;
cout << "Make your selection below: ";
cout << "1. Add family members by name. ";
cout << "2. View all TODO lists. ";
cout << "3. Add TODO item. ";
cout << "4. Complete a TODO item. ";
cout << "5. Exit ";

cin >> choice;
return choice;
}

[Item.h]
#ifndef ITEM_H_INCLUDED
#define ITEM_H_INCLUDED
class Item{
private:
struct node{
char taskName[10];
char taskDesc[80];
node* next;
};
node* head;
node* curr;
node* temp;
public:
Item();
void addNode(char addTask[],char addDesc[]);
void deleteNode(char deleteTask[],char deleteDesc[]);
void printList();
void getTask();
void getDesc();
void setTask(char text[]);
void setDesc(char text[]);
char taskName[10];
char taskDesc[80];
};

#endif // ITEM_H_INCLUDED
[Item.cpp]
#include "Item.h"
#include <stdlib.h>
#include <iostream>
#include<string.h>
using namespace std;
Item::Item(){
head = NULL;
curr = NULL;
temp = NULL;
}
void Item::addNode(char addTask[],char addDesc[]){
node* n = new node;
n->next = NULL;
strcpy(n->taskName,addTask);
strcpy(n->taskDesc,addDesc);
if (head != NULL){
curr = head;
while(curr->next != NULL) {
curr = curr->next;
}
curr->next = n;
} else {
head = n;
}
}
void Item::deleteNode(char deleteTask[], char deleteDesc[]){
node* d = NULL;
temp = head;
curr = head;
while ((curr != NULL) ){
temp = curr;
curr = curr->next;
}
if (curr == NULL){
cout << d << "was not in the list ";
delete d;
} else {
d = curr;
curr= curr->next;
temp->next = curr;
delete d;
cout << d << "was deleted. ";
}
}
void Item::printList(){
curr = head;
while (curr != NULL){
cout << "Subject: " << curr->taskName<< " Description: "<< curr->taskDesc<< endl;
curr = curr->next;
}
}

void Item::getTask()//gets the name of the task from the user
{
cout << " Subject:";
cin.getline(taskName, 10, ' ');
//cout << taskName << endl;
}
void Item::getDesc() //gets the description
{
cout << "Description: ";
cin.getline(taskDesc, 80, ' ');
//cout << taskDesc << endl;
}
void Item::setTask(char* text){
for(int i = 0; i < strlen(text); i++){
text[i];
}
}
void Item::setDesc(char* text){
for(int i = 0; i< strlen(text); i++){
text[i];
}
}

[main.cpp]

#include <iostream>
#include "Item.h"
#include "Queue.h"
using namespace std;

int main()
{

char choice;
do {
Queue A;
Item B;
choice = A.menu();

switch(choice){
case '1':
A.enqueue(A.name);
break;
case '2': A.display();
break;
case '3': B.addNode(B.taskName,B.taskDesc);
break;
case '4': B.deleteNode(B.taskName,B.taskDesc);
break;
default: cout << "System exit ";
}
}while(choice != '5');


/*
Item itemA;
itemA.getTask();
itemA.getDesc();
itemA.setTask(itemA.taskName);
itemA.setDesc(itemA.taskDesc);
itemA.addNode(itemA.taskName,itemA.taskDesc);
itemA.deleteNode(itemA.taskName,itemA.taskDesc);
itemA.printList();

Item *itemPtr;*/
//Queue fam;
//fam.menu();
//fam.enqueue(fam.name);

return 0;
}

elcome to TODO List Manager! ake your selection below: 1. Add family members by name. 2. View all TODO lists 3. Add TODO item. . Complete a TODO item. 5. Exit Enter family member's name Enter family member's name: How How Enter family member's name: do Enter family member's name: I Enter family member's name: stop stop Enter family member's name: after after Enter family member's name: one one Enter family member's name: name..

Explanation / Answer

#include
#include "Item.h"
#include "Queue.h"
using namespace std;

int main()
{
cout<<"Welcome to TODO List Manager! ";
Queue *queues=new Queue[10];
Item *items=new Item[10];
Queue A;
Item B;
char choice= A.menu();
while(choice != '5')
{

switch(choice)
{
case '1':
for (int i =0;i<10; i++){
queues[i].enqueue(queues[i].name);
}
break;
case '2': queues[10].display();
break;
case '3':
for (int i=0; i < 10; i++){
items[i].getTask();
items[i].getDesc();
items[i].setTask(items[i].taskName);
items[i].setDesc(items[i].taskDesc);
items[i].addNode(items[i].taskName,items[i].taskDesc);
}

break;
case '4':
for (int i=0; i < 10; i++){
items[i].deleteNode(items[i].taskName,items[i].taskDesc);
}
break;
default: cout << "System exit ";
}
}
}

THIS IS CODE FROM MY PREVIOUS QUESTION..

[Queue.cpp]

#ifndef QUEUE_H_INCLUDED
#define QUEUE_H_INCLUDED

using namespace std;


class Queue{

private:
struct Node {
char *name;
Node* next;
};
public:
Node *front, *rear;
Queue();
~Queue();
void enqueue(char*);
void dequeue(char*);
void display();
char name[10];
char menu();
};

#endif // QUEUE_H_INCLUDED

[Queue.cpp]

#include "Queue.h"
#include "Item.h"
#include <iostream>
#include <stdlib.h>

using namespace std;

Queue::Queue(){
front = NULL;
rear = NULL;
}

Queue::~Queue(){
while(front!=NULL){
Node *temp=front;
front=front->next;
delete temp;
}
rear = NULL;
}

void Queue::enqueue(char *n){
Node* temp= new Node;
if (temp == NULL){
cout <<"List is full"<<endl;
return;
}
cout << "Enter family member's name: ";
cin.getline(name, 10, ' ');
temp->name = n;
temp->next = NULL;
/*
if (cin >> '3'){
Item itemA;
itemA.getTask();
itemA.getDesc();
itemA.setTask(itemA.taskName);
itemA.setDesc(itemA.taskDesc);
itemA.addNode(itemA.taskName,itemA.taskDesc);
}
*/
if (front== NULL){
front = rear;
rear = temp;
} else {
rear-> next = temp;
rear = temp;
}
cout << n << endl;
}

void Queue::dequeue(char *d){
if (front == NULL){
cout <<"There is nothing to remove." << endl;
return;
}
cout << front->name<<"was removed from the list"<< endl;
if (front == rear){
front = rear;
rear = NULL;
} else {
front = front->next;
}
}

void Queue::display(){
if(front ==NULL){
cout << "Your To-Do list is empty." << endl;
return;
}
Node *temp=front;
while(temp){
cout << temp -> name << " ";
temp = temp-> next;
Item itemB;
itemB.printList();
}
cout << endl;
}

char Queue::menu(){
char choice;
cout << "Make your selection below: ";
cout << "1. Add family members by name. ";
cout << "2. View all TODO lists. ";
cout << "3. Add TODO item. ";
cout << "4. Complete a TODO item. ";
cout << "5. Exit ";

cin >> choice;
return choice;
}

[Item.h]
#ifndef ITEM_H_INCLUDED
#define ITEM_H_INCLUDED
class Item{
private:
struct node{
char taskName[10];
char taskDesc[80];
node* next;
};
node* head;
node* curr;
node* temp;
public:
Item();
void addNode(char addTask[],char addDesc[]);
void deleteNode(char deleteTask[],char deleteDesc[]);
void printList();
void getTask();
void getDesc();
void setTask(char text[]);
void setDesc(char text[]);
char taskName[10];
char taskDesc[80];
};

#endif // ITEM_H_INCLUDED
[Item.cpp]
#include "Item.h"
#include <stdlib.h>
#include <iostream>
#include<string.h>
using namespace std;
Item::Item(){
head = NULL;
curr = NULL;
temp = NULL;
}
void Item::addNode(char addTask[],char addDesc[]){
node* n = new node;
n->next = NULL;
strcpy(n->taskName,addTask);
strcpy(n->taskDesc,addDesc);
if (head != NULL){
curr = head;
while(curr->next != NULL) {
curr = curr->next;
}
curr->next = n;
} else {
head = n;
}
}
void Item::deleteNode(char deleteTask[], char deleteDesc[]){
node* d = NULL;
temp = head;
curr = head;
while ((curr != NULL) ){
temp = curr;
curr = curr->next;
}
if (curr == NULL){
cout << d << "was not in the list ";
delete d;
} else {
d = curr;
curr= curr->next;
temp->next = curr;
delete d;
cout << d << "was deleted. ";
}
}
void Item::printList(){
curr = head;
while (curr != NULL){
cout << "Subject: " << curr->taskName<< " Description: "<< curr->taskDesc<< endl;
curr = curr->next;
}
}

void Item::getTask()//gets the name of the task from the user
{
cout << " Subject:";
cin.getline(taskName, 10, ' ');
//cout << taskName << endl;
}
void Item::getDesc() //gets the description
{
cout << "Description: ";
cin.getline(taskDesc, 80, ' ');
//cout << taskDesc << endl;
}
void Item::setTask(char* text){
for(int i = 0; i < strlen(text); i++){
text[i];
}
}
void Item::setDesc(char* text){
for(int i = 0; i< strlen(text); i++){
text[i];
}
}

[main.cpp]

#include <iostream>
#include "Item.h"
#include "Queue.h"
using namespace std;

int main()
{

char choice;
do {
Queue A;
Item B;
choice = A.menu();

switch(choice){
case '1':
A.enqueue(A.name);
break;
case '2': A.display();
break;
case '3': B.addNode(B.taskName,B.taskDesc);
break;
case '4': B.deleteNode(B.taskName,B.taskDesc);
break;
default: cout << "System exit ";
}
}while(choice != '5');


/*
Item itemA;
itemA.getTask();
itemA.getDesc();
itemA.setTask(itemA.taskName);
itemA.setDesc(itemA.taskDesc);
itemA.addNode(itemA.taskName,itemA.taskDesc);
itemA.deleteNode(itemA.taskName,itemA.taskDesc);
itemA.printList();

Item *itemPtr;*/
//Queue fam;
//fam.menu();
//fam.enqueue(fam.name);

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