Zaimplementuj stos z uzyciem typu tablicowego (statycznego).
#include <iostream>
#include <cstdlib>
using namespace std;
struct stos {
int tab[5];
int rozmiar;
}
;
void push(stos* &s, int x) {
if (s == NULL) {
s = new stos;
s->rozmiar = -1;
}
if (s->rozmiar == (sizeof (s->tab) / sizeof (int)) - 1) {
cout << "Pelny" << endl;
} else {
s->rozmiar++;
s->tab[s->rozmiar] = x;
}
}
int pop(stos* &s) {
int w = 0;
if (s != NULL) {
if (s->rozmiar == -1) {
cout << "Pusty" << endl;
} else {
w = s->tab[s->rozmiar];
s->rozmiar--;
}
} else {
cout << "Pusty" << endl;
}
return w;
}
int topEl(stos *s) {
return s->tab[s->rozmiar];
}
bool isEmpty(stos *s) {
if (s == NULL) {
return 1;
}
return s->rozmiar == -1;
}
void usun(stos *&s) {
delete s->tab;
s->rozmiar = -1;
}
int count(stos *s) {
return s->rozmiar + 1;
}
int main() {
stos* e = NULL;
system("Pause");
return 0;
}
Offline