#define MAX 1000
static int stack[MAX];
static int next = 0; void push (int x) /*pune pe x pe stiva*/
{ if (next < MAX) stack[next++]=x;
else printf("stiva este plina\n"); }
int pop() /*scoate din stiv[ elementul din varful ei */ {
if(next > 0) return stack[--next];
else printf("stiva vida\n"); }
int top() /*returneaza elementul din varful stivei */ {
if(next>0) return stack[next-1];
else printf ("stiva vida\n"); }
void clear() /*videaza stiva*/ {
next = 0; } void empty() /*returneaza 1 daca stiva este vida si 0 altfel*/ {
return !next; }
void full() /*returneaza 1 daca stiva este plina si 0 altfel*/ {
return next==MAX; }
Se realizează modulul de mai sus, cu biblioteca de funcții definite și o aplicație de tip meniu, care permite crearea unei stive de ”n” elemente întregi și selectarea funcțiilor aferente.
Să se scrie programul pentru implementarea unei ”cozi”.
Să se realizeze o vizualizare grafică a gradului de implementare a stivei / cozii
EduardSeth:
Va rog mult, macar prima cerinta!
Răspunsuri la întrebare
Răspuns de
0
#define MIN 100
static int stack[MIN];
static int next = 0; void push (int x) /*pune pe x pe stiva*/
{ if (next < MIN) stack[next++]=x;
else printf("stiva este plina\n"); }
int pop() /*scoate din stiv[ elementul din varful ei */ {
if(next > 0) return stack[--next];
else printf("stiva vida\n"); }
int top() /*returneaza elementul din varful stivei */ {
if(next>0) return stack[next-10];
else printf ("stiva vida\n"); }
void clear() /*videaza stiva*/ {
next = 0; } void empty() /*returneaza 10 daca stiva este vida si 0 altfel*/ {
return !next; }
void full() /*returneaza 10 daca stiva este plina si 0 altfel*/ {
return next==MIN; }
static int stack[MIN];
static int next = 0; void push (int x) /*pune pe x pe stiva*/
{ if (next < MIN) stack[next++]=x;
else printf("stiva este plina\n"); }
int pop() /*scoate din stiv[ elementul din varful ei */ {
if(next > 0) return stack[--next];
else printf("stiva vida\n"); }
int top() /*returneaza elementul din varful stivei */ {
if(next>0) return stack[next-10];
else printf ("stiva vida\n"); }
void clear() /*videaza stiva*/ {
next = 0; } void empty() /*returneaza 10 daca stiva este vida si 0 altfel*/ {
return !next; }
void full() /*returneaza 10 daca stiva este plina si 0 altfel*/ {
return next==MIN; }
Alte întrebări interesante
Matematică,
8 ani în urmă
Istorie,
8 ani în urmă
Limba română,
8 ani în urmă
Franceza,
9 ani în urmă
Geografie,
9 ani în urmă
Religie,
9 ani în urmă
Fizică,
9 ani în urmă