Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <conio.h>
- #include <stdio.h>
- using namespace std;
- class Stiva {
- public:
- virtual void push() {
- }
- virtual void pop() {
- }
- virtual void isEmpty() {
- }
- };
- struct Lista {
- //int nr = NULL;
- Lista* next;
- };
- class StivaInlantuita : Stiva {
- private:
- Lista * listStiva,*first,*last;
- public:
- StivaInlantuita(int dimensiuneStiva) {
- listStiva = new Lista[dimensiuneStiva];
- first = listStiva;
- last = listStiva;
- last->next = NULL;
- for (int i = 1; i < dimensiuneStiva; i++) {
- Lista *tempLista = new Lista;
- last->next = tempLista;
- last = tempLista;
- last->next = NULL;
- }
- }
- void push() {
- if (first != NULL) {
- Lista *tempLista = new Lista;
- last->next = tempLista;
- last = tempLista;
- last->next = NULL;
- }
- else if (first == NULL) {
- listStiva = new Lista;
- first = listStiva;
- last = listStiva;
- last->next = NULL;
- }
- }
- void pop() {
- if (first->next != NULL) {
- Lista *tempLista = last;
- Lista *passby;
- for (passby = first; passby != last; passby = passby->next) {
- }
- last = passby;
- last->next = NULL;
- delete tempLista;
- tempLista = NULL;
- }
- else {
- delete first;
- first = NULL;
- }
- }
- void isEmpty() {
- if (first != NULL) {
- cout << "Stiva nu este Vida\n";
- }
- else {
- cout << "Stiva este Vida\n";
- }
- }
- };
- void main() {
- StivaInlantuita test(1);
- test.isEmpty();
- test.pop();
- test.isEmpty();
- test.push();
- test.isEmpty();
- _getch();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement