Program 1
Save Time On Research and Writing
Hire a Pro to Write You a 100% Plagiarism-Free Paper.
Get My Paper
Write a program named CHECKZIPS that is used by a package delivery service to check delivery areas. The program contains an array that holds 10 zip codes of areas to which the company makes deliveries. Prompt a user to enter a zip code and display a message indicating whether the zip is in the company’s delivery area.
Program 2
Write a program for The Carefree Resort named ResortPrices that prompts the user to enter the number of days for a resort stay. Then display the price per night and the total price. Nightly rates are $200 for one or two nights, $180 for three or four nights, $160 for five, six, or seven nights and $145 for eight nights or more.
You should submit the following:
Save Time On Research and Writing
Hire a Pro to Write You a 100% Plagiarism-Free Paper.
Get My Paper
Your entire Visual Code (or your preferred IDE’s) project folder (zipped).
A word document with your code pasted in it (if there are more than 1 file in your folder with your code, make sure you name the files accordingly.
Screenshots of your GUI at run time (after you hit “run” at your IDE). VERY IMPORTANT: PLEASE SUBMIT THE SCREENSHOTS AS SEPARATE FILES, NOT INSIDE THE ZIPPED PROJECT FOLDER.
This one C++
linkedStacked.h
//Header File: linkedStack.h
#ifndef H_StackType #define H_StackType#include #include #include “
stackADT.h
“using namespace std;//Definition of the nodetemplate struct nodeType{ Type info; nodeType *link;};template class linkedStackType: public stackADT{public: const linkedStackType& operator= (const linkedStackType&); //Overload the assignment operator. bool isEmptyStack() const; //Function to determine whether the stack is empty. //Postcondition: Returns true if the stack is empty; // otherwise returns false. bool isFullStack() const; //Function to determine whether the stack is full. //Postcondition: Returns false. void initializeStack(); //Function to initialize the stack to an empty state. //Postcondition: The stack elements are removed; // stackTop = nullptr; void push(const Type& newItem); //Function to add newItem to the stack. //Precondition: The stack exists and is not full. //Postcondition: The stack is changed and newItem // is added to the top of the stack. Type top() const; //Function to return the top element of the stack. //Precondition: The stack exists and is not empty. //Postcondition: If the stack is empty, the program // terminates; otherwise, the top // element of the stack is returned. void pop(); //Function to remove the top element of the stack. //Precondition: The stack exists and is not empty. //Postcondition: The stack is changed and the top // element is removed from the stack. linkedStackType(); //Default constructor //Postcondition: stackTop = nullptr; linkedStackType(const linkedStackType& otherStack); //Copy constructor ~linkedStackType(); //Destructor //Postcondition: All the elements of the stack are // removed from the stack.private: nodeType *stackTop; //pointer to the stack void copyStack(const linkedStackType& otherStack); //Function to make a copy of otherStack. //Postcondition: A copy of otherStack is created and // assigned to this stack.}; //Default constructortemplate linkedStackType::linkedStackType(){ stackTop = nullptr;}template bool linkedStackType::isEmptyStack() const{ return(stackTop == nullptr);} //end isEmptyStacktemplate bool linkedStackType:: isFullStack() const{ return false;} //end isFullStacktemplate void linkedStackType::initializeStack(){ nodeType *temp; //pointer to delete the node while (stackTop != nullptr) //while there are elements in //the stack { temp = stackTop; //set temp to point to the //current node stackTop = stackTop->link; //advance stackTop to the //next node delete temp; //deallocate memory occupied by temp }} //end initializeStacktemplate void linkedStackType::push(const Type& newElement){ nodeType *newNode; //pointer to create the new node newNode = new nodeType; //create the node newNode->info = newElement; //store newElement in the node newNode->link = stackTop; //insert newNode before stackTop stackTop = newNode; //set stackTop to point to the //top node} //end pushtemplate Type linkedStackType::top() const{ assert(stackTop != nullptr); //if stack is empty, //terminate the program return stackTop->info; //return the top element }//end toptemplate void linkedStackType::pop(){ nodeType *temp; //pointer to deallocate memory if (stackTop != nullptr) { temp = stackTop; //set temp to point to the top node stackTop = stackTop->link; //advance stackTop to the //next node delete temp; //delete the top node } else cout << "Cannot remove from an empty stack." << endl;}//end poptemplate void linkedStackType::copyStack (const linkedStackType& otherStack){ nodeType *newNode, *current, *last; if (stackTop != nullptr) //if stack is nonempty, make it empty initializeStack(); if (otherStack.stackTop == nullptr) stackTop = nullptr; else { current = otherStack.stackTop; //set current to point //to the stack to be copied //copy the stackTop element of the stack stackTop = new nodeType; //create the node stackTop->info = current->info; //copy the info stackTop->link = nullptr; //set the link field of the //node to nullptr last = stackTop; //set last to point to the node current = current->link; //set current to point to //the next node //copy the remaining stack while (current != nullptr) { newNode = new nodeType; newNode->info = current->info; newNode->link = nullptr; last->link = newNode; last = newNode; current = current->link; }//end while }//end else} //end copyStack //copy constructortemplate linkedStackType::linkedStackType( const linkedStackType& otherStack){ stackTop = nullptr; copyStack(otherStack);}//end copy constructor //destructortemplate linkedStackType::~linkedStackType(){ initializeStack();}//end destructor //overloading the assignment operatortemplate const linkedStackType& linkedStackType::operator= (const linkedStackType& otherStack){ if (this != &otherStack) //avoid self-copy copyStack(otherStack); return *this; }//end operator=#endif
don
stackADT.h//Header file: stackADT.h #ifndef H_StackADT#define H_StackADT template class stackADT {public: virtual void initializeStack() = 0; //Method to initialize the stack to an empty state. //Postcondition: Stack is empty virtual bool isEmptyStack() const = 0; //Function to determine whether the stack is empty. //Postcondition: Returns true if the stack is empty, // otherwise returns false. virtual bool isFullStack() const = 0; //Function to determine whether the stack is full. //Postcondition: Returns true if the stack is full, // otherwise returns false. virtual void push(const Type& newItem) = 0; //Function to add newItem to the stack. //Precondition: The stack exists and is not full. //Postcondition: The stack is changed and newItem // is added to the top of the stack. virtual Type top() const = 0; //Function to return the top element of the stack. //Precondition: The stack exists and is not empty. //Postcondition: If the stack is empty, the program // terminates; otherwise, the top element // of the stack is returned. virtual void pop() = 0; //Function to remove the top element of the stack. //Precondition: The stack exists and is not empty. //Postcondition: The stack is changed and the top // element is removed from the stack.}; #endifdon
Question 4:
The Programming Example, Converting a Number from Decimal to Binary, in Chapter 6, contains a program that uses recursion to convert a decimal number into an equivalent binary number. By using the linked stack and stack ADT class provided (linkedStack.h and stackADT.h), write a program that uses a stack to convert a decimal number into an equivalent binary number. Submit the cpp file, and copy and paste the screenshot of the output here.
Turn in your highest-quality paper
Get a qualified writer to help you with
“ Need questions written in code. ”
Get high-quality paper
Guarantee! All work is written by expert writers!