implement the Stack ADT 50 points using array based approac

implement the Stack ADT (50 points) using array – based approach

#include \"StackArray.h\"

template <typename DataType>
StackArray<DataType>::StackArray(int maxNumber)
{
}

template <typename DataType>
StackArray<DataType>::StackArray(const StackArray& other)
{
}

template <typename DataType>
StackArray<DataType>& StackArray<DataType>::operator=(const StackArray& other)
{
}

template <typename DataType>
StackArray<DataType>::~StackArray()
{
}

template <typename DataType>
void StackArray<DataType>::push(const DataType& newDataItem) throw (logic_error)
{
}

template <typename DataType>
DataType StackArray<DataType>::pop() throw (logic_error)
{

}

template <typename DataType>
void StackArray<DataType>::clear()
{
}

template <typename DataType>
bool StackArray<DataType>::isEmpty() const
{
   return false;
}

template <typename DataType>
bool StackArray<DataType>::isFull() const
{
   return false;
}

template <typename DataType>
void StackArray<DataType>::showStructure() const

// Array implementation. Outputs the data items in a stack. If the
// stack is empty, outputs \"Empty stack\". This operation is intended
// for testing and debugging purposes only.

{
if( isEmpty() ) {
   cout << \"Empty stack.\" << endl;
}
else {
   int j;
   cout << \"Top = \" << top << endl;
   for ( j = 0 ; j < maxSize ; j++ )
   cout << j << \"\\t\";
   cout << endl;
   for ( j = 0 ; j <= top ; j++ )
   {
   if( j == top )
   {
   cout << \'[\' << dataItems[j] << \']\'<< \"\\t\"; // Identify top
   }
   else
   {
       cout << dataItems[j] << \"\\t\";
   }
   }
   cout << endl;
}
cout << endl;
}

#ifndef STACKARRAY_H
#define STACKARRAY_H

#include <stdexcept>
#include <iostream>

using namespace std;

#include \"Stack.h\"

template <typename DataType>
class StackArray : public Stack<DataType> {
public:
StackArray(int maxNumber = Stack<DataType>::MAX_STACK_SIZE);
StackArray(const StackArray& other);
StackArray& operator=(const StackArray& other);
~StackArray();

void push(const DataType& newDataItem) throw (logic_error);
DataType pop() throw (logic_error);

void clear();

bool isEmpty() const;
bool isFull() const;

void showStructure() const;

private:
int maxSize;
int top;
DataType* dataItems;
};

#endif       //#ifndef STACKARRAY_H

Solution

#include<iostream>
#include<conio.h>
#include<stdlib.h>
using namespace std;
class stack
{
             int stk[5];
             int top;
      public:
             stack()
              {
                top=-1;
               }
             void push(int x)
              {
                 if(top > 4)
                       {
                           cout <<\"stack over flow\";
                           return;
                       }
                 stk[++top]=x;
                 cout <<\"inserted\" <<x;
               }
             void pop()
               {
                  if(top <0)
                   {
                         cout <<\"stack under flow\";
                         return;
                    }
                    cout <<\"deleted\" <<stk[top--];
                }
             void display()
               {
                   if(top<0)
                    {
                            cout <<\" stack empty\";
                            return;
                    }
                    for(int i=top;i>=0;i--)
                    cout <<stk[i] <<\" \";
                }
};

main()
{
int ch;
stack st;
while(1)
{
cout <<\"\ 1.push 2.pop 3.display 4.exit\ Enter ur choice\";
cin >> ch;
switch(ch)
{
               case 1: cout <<\"enter the element\";
                        cin >> ch;
                        st.push(ch);
                        break;
               case 2: st.pop(); break;
               case 3: st.display();break;
               case 4: exit(0);
               }
         }
return (0);
}

implement the Stack ADT (50 points) using array – based approach #include \
implement the Stack ADT (50 points) using array – based approach #include \
implement the Stack ADT (50 points) using array – based approach #include \

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site