این بر نامه با استفاده از یک پشته(stack) عمل حذف درج و... را انجام می دهد
#include<iostream.h>
#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
# define SIZE 20
class stack
{
int mytop;
int items[SIZE];
public:
stack();//tabe sazande
int empty();//test khali naboodan poshte(0 or 1)
void push(int x);//ezafe kardan adad
void pop(int &); //hazf az poshte
void top(int &);
void display();//namayesh poshte
};
//************************ tarif tavabee *************************
//-------------------------------
stack::stack()
{
mytop= (-1);
}
//-------------------------------
int stack::empty()
{
return(mytop==(-1));
}
//-------------------------------
void stack::push(int x)
{
if(mytop==(SIZE-1))
{
cout<<"\n\n\tSory,Stack is Full";
cout<<"\n\tPress An Key To Contniue...";
getch();
exit(0);
}
else
items[++mytop]=x;
}
//----------------------------------
void stack::pop(int &x)
{
if(empty())
{
cout<<"\n\n\tSory,Stack Is Empty...";
cout<<"\n\tPress Any key To Contenue...";
getch();
exit(0);
}
else
x=items[mytop--];
}
//--------------------------------------
void stack::top(int &x)
{
if(empty())
{
cout<<"\n\n\tSory,Stack Is Empty...";
cout<<"\n\tPress Any key To Contenue...";
getch();
exit(0);
}
else
x=items[mytop];
}
//-----------------------------------
void stack::display()
{
if(mytop==-1)
cout<<"\n\n\n\tStack Is Emptyyyyyyyyyyyyy!!";
else
for(int i=mytop;i>=0;i--)
cout<<"\n\n "<<items[i];
getch();
}
//````````````````````````````````````````````````````````````
int menue();
//******************
// Main
// **********************
void main()
{
int x;
stack s;
while(1)
{
clrscr();
switch(menue())
{
case 1:
s.display();
break;
case 2:
cout <<"Enter a number to push in stack: ";
cin>>x;
s.push(x);
break;
case 3:
s.pop(x);
cout<<"\n\tpopd Voluvs is: "<<x;
getch();
break;
case 4:
s.top(x);
cout<<"\n\tretrieved value is: "<<x;
getch();
break;
case 5:
exit(1);
}//end case
}//end wile
}//end
//-------------------------------------------
int menue()
{
int x;
textcolor(7);
textbackground(1);
clrscr();
cout<<"\n\n\n\t1. print stack";
cout<<"\n\n\t2. Add to Stack";
cout<<"\n\n\t3. pop from stack";
cout<<"\n\n\t4. show top of stack";
cout<<"\n\n\t5. Exit";
cout<<"\n\n\n\n\tEnter your select(1 - 5):\a ";
cin>>x;
return x;
}
سلام ممنون بابت سایت خوبتون میشه لطفا برنامه ماشین حساب با استفاده ازپشته رو بذارید
سلام.
سعی می کنم در اولین فرصت برنامه مورد نظرتون رو رو بلاگ قرار بدم.