Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cstdlib>
- #include <stdio.h>
- using namespace std;
- /* run this program using the console pauser or add your own getch, system("pause") or input loop */
- struct ele{
- int dana;
- ele *nast;
- void wypisz(){
- cout<<dana<<endl;
- }
- };
- void tworz(ele *&em, int data){
- }
- void insert_koniec(ele *&kon, int data){
- cout<<"Podaj dowolną liczbę: ";
- cin>>data;
- ele *elem = new ele;
- elem->dana= data;
- elem->nast=NULL;
- if(kon == NULL){
- kon = elem;
- }
- else {
- ele *tmp = kon;
- while(tmp->nast)
- tmp = tmp->nast;
- tmp->nast = elem;
- }
- }
- void insert_poczatek(ele *&pocz, int x){
- cout<<"Podaj dowolną liczbę: ";
- cin>>x;
- ele *elem2 = new ele;
- elem2->dana = x;
- elem2->nast=pocz;
- pocz=elem2;
- }
- void insert_dowolne(ele *&pocz, int x, int i){
- cout<<"Podaj liczbę, którą chcesz dodać do listy: ";
- cin>>x;
- cout<<"Podaj numer elementu listy, którym ma się stać podana wcześniej liczba: ";
- cin>>i;
- ele * it = pocz;
- int licznik =0;
- if(pocz ==NULL){
- cout<<"Lista jest pusta. Dodaj najpierw jakiś element ";
- return;
- }
- while( it->nast!=NULL){
- licznik++;
- if(licznik==i){
- ele *tmp = new ele;
- tmp ->dana=x;
- tmp->nast=it->nast;
- it = tmp;
- return;
- }
- it = it->nast;
- }
- }
- void wypisz_wszystko(ele *pocz){
- cout<<"Wszystkie dane: \n";
- while(pocz!=NULL){
- pocz->wypisz();
- pocz=pocz->nast;
- }
- }
- int main(int argc, char** argv) {
- int inst;
- int x;
- int i;
- int data;
- ele *pocz = NULL;
- ele *kon = NULL;
- cout<<"Co chcesz zrobić? \n"
- <<"[1}Dodać nowy element na początek listy \n"
- <<"[2]Dodać element na koniec listy \n"
- <<"[3]Dodać element w wybrane miejsce listy \n"
- <<"[4]Usunąć element z początku listy \n"
- <<"[5]Usunąć element z końca listy \n"
- <<"[6]Usunąć wybrany element listy \n"
- <<"[7]Wypisać całą listę \n"
- <<"[8}Wypisać wybrany element listy \n"
- <<"[9]Wypisać wskaźnik do elemtu zawierającego wybraną wartość \n";
- while(cin>>inst){
- switch (inst){
- case 1:
- insert_poczatek(pocz, x);
- break;
- case 2:
- insert_koniec(kon, data);
- break;
- case 3:
- insert_dowolne(pocz, x,i);
- case 7:
- wypisz_wszystko(pocz);
- break;
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement