Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Zadanie 1 lista.cpp : Ten plik zawiera funkcję „main”. W nim rozpoczyna się i kończy wykonywanie programu.
- //
- #include "pch.h"
- #include <iostream>
- #include <string>
- using namespace std;
- class Obiekt
- {
- private:
- int numer;
- char nazwa;
- };
- template <typename T>
- class przejscie
- {
- public:
- T dane;
- przejscie*dalej;
- przejscie*wstecz;
- przejscie(T dane)
- {
- this->dane = dane;
- }
- };
- template <typename T>
- class Lista
- {
- public:
- przejscie<T>*glowa = NULL;
- przejscie<T>*ogon = NULL;
- int dlugosc;
- void dodaj_na_poczatek(T dane)//? nie jestem pewny
- {
- przejscie<T>*wezel = new przejscie<T>(dane);
- if (dlugosc > 0)
- {
- glowa->wstecz = wezel;
- wezel->dalej = glowa;
- glowa = wezel;
- }
- else
- {
- glowa = wezel;
- ogon = wezel;
- }
- dlugosc++;
- }
- void dodaj_na_koniec (T dane)
- {
- przejscie<T>*wezel = new przejscie<T>(dane);
- if (dlugosc > 0)
- {
- ogon -> dalej = wezel;
- wezel -> wstecz = ogon;
- ogon = wezel;
- }
- else
- {
- glowa = wezel;
- ogon = wezel;
- }
- dlugosc++;
- }
- void usun_k()
- {
- przejscie<T>*wezel = ogon->wstecz;
- delete ogon;
- ogon = wezel;
- wezel->dalej = NULL;
- dlugosc--;
- }
- void usun_p()
- {
- przejscie<T>*wezel = glowa->dalej;
- delete glowa;
- glowa=wezel;
- wezel -> wstecz = NULL;
- dlugosc--;
- }
- void zwroc_dane(int i)
- {
- przejscie<T>*tym = glowa;
- int j = 0;
- for (j = 0; j < i; j++)
- tym = tym->dalej;
- }
- void podmiana(int i, T dane)
- {
- przejscie<T>*index = glowa;
- int g = 0;
- for (g = 0; g < i; g++)
- index = index->dalej;
- index->dane = dane;
- }
- T znajdz_element(T dane)
- {
- przejscie<T>*li = glowa;
- }
- void znajdz_usun(T dane)
- {
- }
- };
- int main()
- {
- std::cout << "Witaj \n";
- Lista<int>* listy = new Lista<int>();
- listy->dodaj_na_poczatek(1);
- listy->dodaj_na_poczatek(3);
- listy->dodaj_na_poczatek(6);
- listy->dodaj_na_koniec(2);
- listy->dodaj_na_koniec(5);
- listy->dodaj_na_koniec(6);
- //listy->usun_k();
- //listy->usun_p();
- //listy->zwroc_dane(0);
- //listy->podmiana(2, 3);
- przejscie<int>* temp = listy->glowa;
- while (temp != NULL)
- {
- std::cout <<"element listy: " << temp->dane << std::endl;
- temp = temp->dalej;
- }
- delete listy;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement