8724

8724



Podstawy Programowania - semestr dmgi


30    rcpcał

31    ifp^rocfnil then

32    bcgin

33    |r\ncxt:-nowy;

34    nowy\prev:-p;

35    exit;

36    end,

37    p:-pA.nexl;

38    until p" .d;ina >a;

39    nowy\prcv:-p\prev;

40    nowyA.ncxt:-p;

41    pA.prcvA.ncxt:-nowy;

42    pA.prcv.--nowy;

43    end;

44

45    procedurę create(var f: wskaźnik; aiintcger);

46    var

47    nowywskaznik;

48    begin

49    if P-nil then

50    bcgin

51    ncwfnowy);

52    nowy A. da na :~a;

53    nowyA.ncxt:-nil;

54    nowyA.prcv.—nil;

55    f:-nowy,

56    end

57    ebe

58    insert node(f,a);

59    end;

60

61    procedurę show both(f:wskaźnik);

62    var

63    p:wskaznik;

64    begin

65    while fo nil do

66    bcgin

67    pr-f.

68    writc(P'.dana:3);

69    f:-T.ncxt;

70    end;

71    wTiteln;

72    while ponil do

73    bcgin

74    wrilc(pA.dana:3);


3. Po w ykonaniu wiersza 40



4. Po w ykonaniu wiersza 41


5. Po w ykonaniu wiersza 42


Po zakończeniu pełli jrepeat” zmienna wskaźnikowa „p” wskazuje element listy, przed którym i w leży umieścić nowy element. W wierszach 39 i 40 przypisujemy odpowiednio polu ,.prev" i polu „ncxt” nowego elementu adres elementu poprzedzającego element wskazywany przez „p” i adres elementu wskazywanego przez ,p". W wierszu 41 zapamiętujemy w polu „ncxt" elementu poprzedzającego element wskazywany przez „p” adres nowego elementu. W wierszu 42. w polu „prev" elementu wskazywanego przez „p" również umieszczamy adres nowego elementu. Po tych operacjach otrzymujemy konfigurację przedstaw ioną na dole ilustracji

Procedura ..dcletc nodc" realizuje operację usuwania elementu z listy. Pisząc tego rodzaju procedurę należy uwzględnić trzy przypadki. W pierwszym elementem usuwanym będzie element znajdujący się na początku listy. Usunięcie go jest dokonywane w wierszach 96 -104. W wierszu 98 zapamiętujemy w zmiennej ..tmp” adres elementu, który jest jego następnikiem, po czym w wierszu 99 zwal nu my pamięć przeznaczoną na pierwszy element. Pierwszym elementem listy zostaje element, którego adres pamiętamy w zmiennej „tmp”. Przepisujemy więc jego adres do zmiennej „p”. ustawiamy wartość jego pola «prev” na „NIL” i modyfikujemy wskaźnik na pierwszy element listy (J”), lak. aby wskazywał na niego-'. Po wykonaniu tych czynności możemy zakończyć działanie procedury. Obsługa drugiego przypadku jest pow iązana z obsługą trzeciego. W wierszach 105 - 108 przeszukujemy itcracyjnic listę szukając elementu, który przechowywałby zadaną wartość — ten element będziemy chcieli usunąć. Może się okazać, że takiego elementu nic będzie na liście.


2 Adres pierwszego elementu listy zawiera parametr „f procedury, natomiast zmienna lokalna _p“ jest tylko zmienną pomocniczą.


2



Wyszukiwarka

Podobne podstrony:
Podstawy Programowania - semestr dmgi wartości jakie może przechowywać /mieniu tego typu. ale równie
Podstawy Programowania - semestr drugi sie posługiwać wskaźnikami. Ponieważ zmienna wskaźnikowa
2013 03 04 26 47 Laboratorium Podstaw Konstrukcji Maszyn Studia I stopnia, semestr IV, 30 godzin za
Podstawy programowania -1 doc. dr inż. Tadeusz Jeleniewski Wykład: sobota B, godz. 10.30 - 12.55 sal
Treści programowe: Semestr I (Podstawy Inżynierii Wytwarzania I) Lp. Zagadnienia Liczba
Mariola Brzoska - Propozycja podstaw programowych dla Studium Muzyki Kościelnej Semestr II 1.
Języki Programowania z Programowaniem Obiektowymwykład (15 godzin/semestr) laboratorium (30
Program Semestr I: Podstawy fizyki kwantowej: dualizm korpuskulamo-falowy światła i materii, zjawisk
rozpiska1 2 Laboratorium podstaw konstrukcji maszyn Studia I stopnia, semestr IV, 30 godzin
BO - 3. Informatyka - przedmioty obowiązkowe 3.1. Podstawy informatyki i programowania SEMESTR
Wykład XJęzyki programowania Object Pascal: Proste typy danych Podstawy informatyki Semestr I
Program szczegółowy laboratorium - 30 godz. Zajęcia wprowadzające (1 godz.) 1. Podstawy
Easy YouTube Video Downloader Dodatki dla programu Firefox 11 07 30! 14 31 jpeg mozilla Fi
23 luty 07 (31) Tablica 1.3 Schematy mechanizmów podstawowych klasy 2 z członem napędzającym 30
Doskonalenie podstaw programowych kłuciem do modernizacji kształcenia zawodowego — W PROGRAM
Doskonalenie podstaw programowych kluczem do modernizacji kształcenia zawodowego13. PROGRAMY NAUCZAN

więcej podobnych podstron