PodstawyProgramowania W10, Studia

[ Pobierz całość w formacie PDF ]
//-->PODSTAWYPROGRAMOWANIAWykład 10PROWADZĄCY: dr inż. Marcin GłowackiE-Mail:Marcin.Glowacki@pwr.wroc.plPok.907 C-5Wrocław 2014WYKŁAD 10 (2014)Podstawy programowania 1(dr.inżMarcin Głowacki)210.ZMIENNEDYNAMICZNEOperatory:newdelete- dynamicznie tworzy zmienną w trakcie działania programu- rezerwuje miejsce w pamięci, zmienna nie ma nazwy- kasuje zmienną utworzoną uprzednio przeznew- zwalnia miejsce w pamięcinewtypzwracaWSKAŹNIKna nowo utworzoną zmienną danegotypuint *wd;wd =newint;//deklaracja zmiennej dynamicznej typu intlubint*wd =newint;*wd = 10;*wd+=5;x = (*wd)++;........deletewd;//usuniecie zmiennej dynamicznejNie zawsze się uda utworzyć zmienną dynamiczną (brak pamięci – inne problemy),zatem zawsze warto testować wynik operacji.double*wz =newdouble;if (wz == 0) //wskaźnik równy zero – nic nie wskazuje//zmienna dynamiczna nie utworzonaDynamicznie tworzymyTABLICE–alemusimy zadać rozmiarPRZYKŁAD:#include <iostream>using namespace std;const int MAXTAB=10;int main(){int*iTab =newint[MAXTAB];//tworzy tablicę iTab – trzeba podaćrozmiarif (iTab)//prawda to iTab różne od zera <=> poprawnie utworzonefor (int i = 0; i<MAXTAB; i++){iTab[i]=i*i;cout <<i<<" "<<iTab[i]<<endl;}else { cerr<< "Zalozenie tablicy niemozliwe"; return 1; } //błąd założenia tablicy//.............tutaj inne operacje przetwarzaniadelete[] iTab;//kasuje tablice iTabreturn 0;}WYKŁAD 10 (2014)Podstawy programowania 1(dr.inżMarcin Głowacki)3DYNAMICZNESTRUKTURYDANYCHDo dynamicznych struktur danych zalicza się:-stosy (sterty),-kolejki,-listy,-drzewa binarne (w tym stogi),STOSjest strukturą, która posiada swoje dno i wierzchołek. Dane ułożone sąw sekwencji począwszy od dna do wierzchołka. Możliwa jest realizacja stosuprzy użyciu listy jednokierunkowej.wierzcholeknastepnydanewezel nnastepnynastepnynastepny.........danedanewezel 3wezel 2dno stosudanewezel 1NULLNowe dane mogą być składowane na szczycie stosu, ponad wierzchołkiem. Dowskaźnika na następny element wpisywana jest poprzedni adres wierzchołka,a wtedy wierzchołek się przesuwa wskazując na nową daną na szczycie stosu.wierzcholekwierzcholeknastepnynastepnydanedanewezel 4wierzcholeknastepnynastepnynastepnydanewezel 3wezel 2wezel 3wezel 2danenastepnynastepnydanedno stosudanewezel 1dno stosudanewezel 1NULLNULLOdłożenie nowej danej na szczycie stosuWYKŁAD 10 (2014)Podstawy programowania 1(dr.inżMarcin Głowacki)4Pobieranie danychze stosu odbywa się w odwrotnej kolejności niż dodawaniedanych, podobnie jak w buforach LIFO – Last In First Out.Po pobraniu danej ze stosu adres ze wskaźnika na następny węzeł wpisywanyjest do wierzchołka, który zniża się do następnego elementu ze stosu.Odczytywanie powoduje ściąganie danych ze stosu. Nie ma przeszkód, żebymieć swobodny dostęp do informacji przechowywanych na stosiewierzcholekwierzcholeknastepnynastepnynastepnynastepnydanewezel 4danewezel 3wezel 2wierzcholeknastepnynastepnynastepnydanewezel 3wezel 2danedanedno stosudanewezel 1dno stosudanewezel 1NULLNULLŚciągnięcie danej ze stosuKOLEJKAjest strukturą, która posiada swój początek i koniec. Dane ułożonesą w sekwencji począwszy do końca. Możliwa jest realizacja kolejki przyużyciu listy jednokierunkowej.Dane do kolejki są dodawane na końcu, a pobierane na początku. Pobieraniedanych ze stosu odbywa się w tej samej kolejności co dodawanie danych,podobnie jak w buforach FIFO – First In First Out.wezel 1nastepnydanewezel 2nastepnydane.........wezel nnastepnydaneNULLpoczatekkoniecWYKŁAD 10 (2014)Podstawy programowania 1(dr.inżMarcin Głowacki)5wezel 1nastepnydanewezel 2nastepnydanewezel 3nastepnydaneNULLpoczatekkoniecwezel 1nastepnydanewezel 2nastepnydanewezel 3nastepnydanewezel 4nastepnydaneNULLpoczatekkonieckoniecDodanie danej na końcu kolejkiwezel 1nastepnydanewezel 2nastepnydanewezel 3nastepnydanewezel 4nastepnydaneNULLpoczatekpoczatekkoniecwezel 1nastepnydanewezel 2nastepnydanewezel 3nastepnydaneNULLpoczatekkoniecPobranie danej z początku kolejki [ Pobierz całość w formacie PDF ]

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • tlumiki.pev.pl