Kashub's Code Barn - "wal_sie"

podświetlone jako cpp (dodał(a) Damian @ 2011-10-15 15:59:54)

Twoja wyszukiwarka
Podświetl ten kod w:
Ostatnio dodane:
Losowe wpisy:
#include <cstdlib>
#include <iostream>
#include <conio.h>
 
using namespace std;
 
 
struct elem {
   int dane;
   elem *nast;             
};
 
void push(elem *&stos, int x);
int pop(elem *&stos);
int topEl(elem *stos);
bool isEmpty(elem *stos);
void usun(elem *&stos);
int count(elem *stos);
 
int main(int argc, char *argv[])
{
    unsigned int option = 0;
    int liczba = 0;
    elem *stos = NULL;
 
 
    while(option!=7) {
 
 
 
       cout << "\n\n\n\n1. Polozenie elementu na wierzcholku stosu " << endl;      
       cout << "2. Pobranie ostatnio odlozonego elementu i zwrocenie go jako wartosci funkcji " << endl;
       cout << "3. Zwrocenie elementu znajdujacego sie na wierzcholku stosu bez jego usuwania " << endl;
       cout << "4. Sprawdzenie czy stos jest pusty " << endl;    
       cout << "5. Usun stos " << endl; 
       cout << "6. Zlicz elementy na stosie " << endl; 
       cout << "7. Koniec programu " << endl;
       cout << "\n\n\nWybierz opcje " << endl;
       cin >> option;
 
       switch (option) {
              case 1: cout << "Podaj dowolna liczbe" << endl;
                      cin >> liczba;
                      push(stos, liczba);
                      cout << "Polozono element na wierzcholek stosu" << endl;
                      break;
              case 2: 
                      cout << "Pobrany element ze szczytu stosu " << pop(stos) << endl;
                      break;
              case 3: 
                      cout << "Pobrany element z wierzcholku stosu bez usuwania " << topEl(stos) << endl;
                      break;
              case 4: 
                      if (isEmpty(stos)) 
                         cout << "stos jest pusty" << endl;
                      else
                          cout << " stos nie jest pusty" << endl; 
                      break;
              case 5: usun(stos);
                      cout << "Usunieto caly stos" << endl;
                      break;
              case 6: cout << "Ilosc elementow w stosie: " << count(stos) << endl;
                      break;
       }
 
    }
    return 0;
}
 
 
//================================================
void push(elem *&stos, int x) {
 
     elem *e = new elem;
     e->dane = x;
     e->nast = stos;
 
     stos = e;
}
//================================================
 
int pop(elem *&stos) {
 
    elem *e;
 
    if (stos == NULL) {
       cout <<"pusty stos" << endl;
       return -121;
    }
 
    int zwr = stos->dane;
 
    e = stos->nast;
    delete stos;
    stos = e;
 
    return zwr;
}
 
//================================================
 
int topEl(elem *stos) {
 
     if (stos == NULL) {
       cout <<"pusty stos" << endl;
       return -121;
     }
 
     int zwr = stos->dane;
     return zwr;
}
 
//================================================
 
bool isEmpty(elem *stos) {
     if (stos == NULL) {
       return true;
     }
     else
       return false;
}
 
//================================================
 
void usun(elem *&stos) {
 
 
    elem *e;
 
    while(stos) {
        e = stos->nast;
        delete stos;
        stos = e;
    }
}
 
//================================================
 
int count(elem *stos) {
 
    if (stos == NULL)
       return 0;
 
    int il = 0;    
 
    while(stos) {
        stos = stos->nast;
        ++il;
    }
 
    return il;
}
 
| sklep zoologiczny | | sklep z bielizną | | Kredyty mieszkaniowe | | Programista PHP | | Skróć link | | Blog o książkach | | Wklejacz kodów | | Skracacz adresów | | Smutne Opisy | | Opisy na Facebooka |