حقيقة عندي هذا البرنامج والذي يستخدم مجموعة من الدوال لترتيب عناصر الــSTACk
لكن مع الأسف فشلت في اكماله حتى النهاية ,, اتمنى أجد المساعده,
خصوصا أن اختباري في DataStructure يوم السبت القادم....
التركيب الذي في البرنامج هو التالي:
#define stacksize 100
struct stack{
int stackaray[stacksize];
int top;
int count;
};الدوال المستخدمة في البرنامج :
void push(struct stack* t,int x)
{
if (t->top==stacksize-1)
{
printf(" \n Stack OverFlow");
exit (1);
}
else
t->stackaray[++t->top]=x;
}struct stack* Do_empty(struct stack* tt)
{
tt->top=-1;
return tt;
}bool Is_empty(struct stack* s)
{
if(s->top==-1)
return 1;
else
return 0;
}int pop(struct stack* g)
{
if(Is_empty(g))
{
printf("Stack is underflow");
}
else
return (g->stackaray[g->top--]);
}المشكلة تكمن في عمل دالة ترتب عناصر الــSTACk
عملت دالة ولكن لم تؤدي الغرض منها وهاهي:
int main_2(int a,int b )
{
if(a<b)
return a;
else
return b;
}
int main_n(struct stack *t)
{
m=t->stackaray[t->top];
for(int i=0;i<t->top;i++)
m=main_2(m,t->stackaray);
return m;
}اتمنى أجد المساعدة من الاخوة الافاضل