For this code just explain the void pop function, with enough explanation that how it is working. Also explain on the usage of pointer in this function. Thanks #include using namespace std; int choice, j=0; int stack[50]; int *top; bool Exit_Indicator = false; void displayStack() { cout << "\n\t~Stack Display~\nTOP ->"; for (int i = j-1; i >= 0; i--) cout << "\t|\t" << stack[i] << "\t|" << endl; cout << "\t-----------------"; } void push(int i) { cout << "\n(" << i << ") has been PUSHED into the stack!"; *top = i; top++; j++; } void pop() { if((*(top-2) != 0 && *(top-1)!= 0) || (*(top-2) == 0 && *(top-1)!= 0)) { cout << "\n(" << *(top-1) << ") has been POPPED from the stack!"; *(top-1)= 0; top--; j--; } else{ cout<<"\nTHE STACK IS EMPTY"; } } int main() { int value; top = stack; do { cout << "\n\n------------------------------------------------------------------------\nStack Program Selection UI"; cout << "\n\n1.Push a value into the stack \n2.Pop a value from the stack \n3.List all elements in stack \nOther numbers to exit the program. \n\nYour Choice : "; cin>>choice; if (choice == 1) { do { cout << "Enter any values except 0: "; cin>>value; } while (value == 0); push(value); } else if (choice == 2) pop(); else if (choice == 3) displayStack(); else Exit_Indicator = true; } while (Exit_Indicator == false); return 0; }
For this code just explain the void pop function, with enough explanation that how it is working. Also explain on the usage of pointer in this function. Thanks
#include<iostream>
using namespace std;
int choice, j=0;
int stack[50];
int *top;
bool Exit_Indicator = false;
void displayStack() {
cout << "\n\t~Stack Display~\nTOP ->";
for (int i = j-1; i >= 0; i--)
cout << "\t|\t" << stack[i] << "\t|" << endl;
cout << "\t-----------------";
}
void push(int i)
{
cout << "\n(" << i << ") has been PUSHED into the stack!";
*top = i;
top++;
j++;
}
void pop()
{
if((*(top-2) != 0 && *(top-1)!= 0) || (*(top-2) == 0 && *(top-1)!= 0)) {
cout << "\n(" << *(top-1) << ") has been POPPED from the stack!";
*(top-1)= 0;
top--;
j--;
}
else{
cout<<"\nTHE STACK IS EMPTY";
}
}
int main() {
int value;
top = stack;
do {
cout << "\n\n------------------------------------------------------------------------\nStack Program Selection UI";
cout << "\n\n1.Push a value into the stack \n2.Pop a value from the stack \n3.List all elements in stack \nOther numbers to exit the program. \n\nYour Choice : ";
cin>>choice;
if (choice == 1)
{
do {
cout << "Enter any values except 0: ";
cin>>value;
} while (value == 0);
push(value);
}
else if (choice == 2)
pop();
else if (choice == 3)
displayStack();
else
Exit_Indicator = true;
} while (Exit_Indicator == false);
return 0;
}
Step by step
Solved in 2 steps