Advertisement
Guest User

Untitled

a guest
Feb 13th, 2014
333
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.27 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstdlib>
  3. #include <stdio.h>
  4. using namespace std;
  5. /* run this program using the console pauser or add your own getch, system("pause") or input loop */
  6. struct ele{
  7.     int dana;
  8.     ele *nast;
  9.    
  10.    
  11.    
  12.    
  13.     void wypisz(){
  14.         cout<<dana<<endl;
  15.     }
  16.  
  17. };
  18. void tworz(ele *&em, int data){
  19.  
  20. }
  21. void  insert_koniec(ele *&kon, int data){
  22.     cout<<"Podaj dowolną liczbę:  ";
  23.     cin>>data;
  24.     ele *elem = new ele;
  25.     elem->dana= data;
  26.     elem->nast=NULL;
  27.    
  28.     if(kon == NULL){
  29.         kon = elem;
  30.     }
  31.     else {
  32.     ele *tmp = kon;
  33.     while(tmp->nast)
  34.     tmp = tmp->nast;
  35.     tmp->nast = elem;
  36. }
  37. }
  38. void insert_poczatek(ele *&pocz, int x){
  39.     cout<<"Podaj dowolną liczbę: ";
  40.     cin>>x;
  41.     ele *elem2 = new ele;
  42.     elem2->dana = x;
  43.     elem2->nast=pocz;
  44.     pocz=elem2;
  45.  
  46.  
  47. }
  48. void insert_dowolne(ele *&pocz, int x, int i){
  49.     cout<<"Podaj liczbę, którą chcesz dodać do listy: ";
  50.     cin>>x;
  51.     cout<<"Podaj numer elementu listy, którym ma się stać podana wcześniej liczba: ";
  52.     cin>>i;
  53.     ele * it = pocz;
  54.     int licznik =0;
  55.    
  56.     if(pocz ==NULL){
  57.         cout<<"Lista jest pusta. Dodaj najpierw jakiś element ";
  58.         return;
  59.     }
  60.     while( it->nast!=NULL){
  61.         licznik++;
  62.         if(licznik==i){
  63.             ele *tmp = new ele;
  64.             tmp ->dana=x;
  65.             tmp->nast=it->nast;
  66.             it = tmp;
  67.             return;
  68.         }
  69.         it = it->nast;
  70.     }
  71.    
  72. }
  73. void wypisz_wszystko(ele *pocz){
  74.     cout<<"Wszystkie dane: \n";
  75.     while(pocz!=NULL){
  76.         pocz->wypisz();
  77.         pocz=pocz->nast;
  78.        
  79.     }
  80.    
  81. }
  82.  
  83. int main(int argc, char** argv) {
  84.     int inst;
  85.      int x;
  86.      int i;  
  87.      int data;
  88.     ele *pocz = NULL;
  89.     ele *kon = NULL;
  90.     cout<<"Co chcesz zrobić? \n"
  91.     <<"[1}Dodać nowy element na początek listy \n"
  92.     <<"[2]Dodać element na koniec listy \n"
  93.     <<"[3]Dodać element w wybrane miejsce listy \n"
  94.     <<"[4]Usunąć element z początku listy \n"
  95.     <<"[5]Usunąć element z końca listy \n"
  96.     <<"[6]Usunąć wybrany element listy \n"
  97.     <<"[7]Wypisać całą listę \n"
  98.     <<"[8}Wypisać wybrany element listy \n"
  99.     <<"[9]Wypisać wskaźnik do elemtu zawierającego wybraną wartość \n";
  100. while(cin>>inst){
  101.  
  102.     switch (inst){
  103.         case 1:
  104.             insert_poczatek(pocz, x);
  105.             break;
  106.         case 2:
  107.             insert_koniec(kon, data);
  108.             break;
  109.         case 3:
  110.             insert_dowolne(pocz, x,i);
  111.         case 7:
  112.             wypisz_wszystko(pocz);
  113.             break;
  114.     }
  115. }
  116.    
  117.     return 0;
  118. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement