L ISTA PROSTA
procedure POKAZ(list : EL);
var el : EP;
begin
el:= list^.P;
while el <> NIL do begin
write(el^.W,';');
el := el^.N;
end;
end;
begin
writeln('TWORZE LISTE');
new(L);
z:='t';
while z = 't' do begin
new(TEMP);
write('Podaj wartosc: ');
readln(TEMP^.W);
DODAJ(TEMP , L);
writeln('Czy podajesz dalej elementy (t/n)');
readln(z);
end;
writeln('WYSWIETLAM...');
POKAZ(L);
readln;
end.
EP = ^E;
EL = ^LISTA;
E = record W:byte;
N:EP;
end;
LISTA=record P:EP;
K:EP;
end;
var
L:EL;
TEMP : EP;
z:char;
procedure DODAJ(element : EP; list : EL begin
if list^.P <> NIL then begin
list^.K^.N := element;
list^.K := element;
end else begin
list^. P:= element;
list^. K:= list^. P;
end;
end;
TYPE EP=^E;
EL=^LISTA;
E=record W:byte;
N:EP;
end;
LISTA=record P:EP;
K:EP;
end;
var
L:EL;
TEMP:EP;
z:char;
•
wskaźnik na element listy
•
wskaźnik na listę
o
rekord opisujący element listy
zawartość elementu
wskaźnik do elementu następnego listy
rekord opisujący listę prostą jednokierunkową
początek listy
koniec listy
Zmienne:
Lista
Element listy pomocniczy
Zmienna sterująca
procedure DODAJ(element :E P ;list:EL) begin
if list^.P <> NIL then begin
list^.K^.N := element;
list^.K := element;
end else begin
list^.P:=element;
list^.K:=list^.P;
end;
end;
procedure POKAZ(list:EL);
var el : EP;
begin
el:= list^.P;
while el <> NIL do begin
write(el^.W,';');
el := el^.N;
end;
end;
begin
writeln('TWORZE LISTE');
new(L);
z:='t';
while z='t' do begin
new(TEMP);
write('Podaj wartosc: ');
readln(TEMP^.W);
DODAJ(TEMP,L);
writeln('Czy podajesz dalej elementy (t/n)');
readln(z);
end;
Tworzymy pustą listę
procedure DODAJ(element :E P ;list:EL) begin
if list^.P <> NIL then begin
list^.K^.N := element;
list^.K := element;
end else begin
list^.P:=element;
list^.K:=list^.P;
end;
end;
procedure POKAZ(list:EL);
var el : EP;
begin
el:= list^.P;
while el <> NIL do begin
write(el^.W,';');
el := el^.N;
end;
end;
begin
writeln('TWORZE LISTE');
new(L);
z:='t';
while z='t' do begin
new(TEMP);
write('Podaj wartosc: ');
readln(TEMP^.W);
DODAJ(TEMP,L);
writeln('Czy podajesz dalej elementy (t/n)');
readln(z);
end;
Tworzymy element
Tworzymy listę
Lista pusta
procedure DODAJ(element :E P ;list:EL) begin
if list^.P <> NIL then begin
list^.K^.N := element;
list^.K := element;
end else begin
list^.P:=element;
list^.K:=list^.P;
end;
end;
procedure POKAZ(list:EL);
var el : EP;
begin
el:= list^.P;
while el <> NIL do begin
write(el^.W,';');
el := el^.N;
end;
end;
begin
writeln('TWORZE LISTE');
new(L);
z:='t';
while z='t' do begin
new(TEMP);
write('Podaj wartosc: ');
readln(TEMP^.W);
DODAJ(TEMP,L);
writeln('Czy podajesz dalej elementy (t/n)');
readln(z);
end;
99
Tworzymy listę
Tworzymy element Podajemy jego wartość
Lista pusta
procedure DODAJ(element :E P ;list:EL) begin
if list^.P <> NIL then begin
list^.K^.N := element;
list^.K := element;
end else begin
list^.P:=element;
list^.K:=list^.P;
end;
end;
procedure POKAZ(list:EL);
var el : EP;
begin
el:= list^.P;
while el <> NIL do begin
write(el^.W,';');
el := el^.N;
end;
end;
begin
writeln('TWORZE LISTE');
new(L);
z:='t';
while z='t' do begin
new(TEMP);
write('Podaj wartosc: ');
readln(TEMP^.W);
DODAJ(TEMP,L);
writeln('Czy podajesz dalej elementy (t/n)');
readln(z);
end;
Tworzymy listę Tworzymy element Podajemy jego wartość Lista jest pusta więc
ustawiamy jej początek na nowy element, który
równocześnie jest jej końcem
99 Lista
pusta
procedure DODAJ(element :E P ;list:EL) begin
if list^.P <> NIL then begin
list^.K^.N := element;
list^.K := element;
end else begin
list^.P:=element;
list^.K:=list^.P;
end;
end;
procedure POKAZ(list:EL);
var el : EP;
begin
el:= list^.P;
while el <> NIL do begin
write(el^.W,';');
el := el^.N;
end;
end;
begin
writeln('TWORZE LISTE');
new(L);
z:='t';
while z='t' do begin
new(TEMP);
write('Podaj wartosc: ');
readln(TEMP^.W);
DODAJ(TEMP,L);
writeln('Czy podajesz dalej elementy (t/n)');
readln(z);
end;
99
Tworzymy listę Tworzymy element Podajemy jego wartość Lista jest pusta więc
ustawiamy jej początek na nowy element, który równocześnie jest jej końcem
Dodajemy do listy
Lista pusta
procedure DODAJ(element :E P ;list:EL) begin
if list^.P <> NIL then begin
list^.K^.N := element;
list^.K := element;
end else begin
list^.P:=element;
list^.K:=list^.P;
end;
end;
procedure POKAZ(list:EL);
var el : EP;
begin
el:= list^.P;
while el <> NIL do begin
write(el^.W,';');
el := el^.N;
end;
end;
begin
writeln('TWORZE LISTE');
new(L);
z:='t';
while z='t' do begin
new(TEMP);
write('Podaj wartosc: ');
readln(TEMP^.W);
DODAJ(TEMP,L);
writeln('Czy podajesz dalej elementy (t/n)');
readln(z);
end;
99
Tworzymy listę Tworzymy element Podajemy jego wartość Lista jest pusta więc
ustawiamy jej początek na nowy element, który równocześnie jest jej końcem
Dodajemy do listy Jeśli lista ma już
początek to jest listą
NIEPUSTĄ
procedure DODAJ(element :E P ;list:EL) begin
if list^.P <> NIL then begin
list^.K^.N := element;
list^.K := element;
end else begin
list^.P:=element;
list^.K:=list^.P;
end;
end;
procedure POKAZ(list:EL);
var el : EP;
begin
el:= list^.P;
while el <> NIL do begin
write(el^.W,';');
el := el^.N;
end;
end;
begin
writeln('TWORZE LISTE');
new(L);
z:='t';
while z='t' do begin
new(TEMP);
write('Podaj wartosc: ');
readln(TEMP^.W);
DODAJ(TEMP,L);
writeln('Czy podajesz dalej elementy (t/n)');
readln(z);
end;
99
Tworzymy listę Tworzymy element Podajemy jego wartość Lista jest pusta więc
ustawiamy jej początek na nowy element, który równocześnie jest jej końcem
Dodajemy do listy
Jeśli lista ma już początek to jest listą NIEPUSTĄ
Ustawiamy wskaźnik
na element
procedure DODAJ(element :E P ;list:EL) begin
if list^.P <> NIL then begin
list^.K^.N := element;
list^.K := element;
end else begin
list^.P:=element;
list^.K:=list^.P;
end;
end;
procedure POKAZ(list:EL);
var el : EP;
begin
el:= list^.P;
while el <> NIL do begin
write(el^.W,';');
el := el^.N;
end;
end;
begin
writeln('TWORZE LISTE');
new(L);
z:='t';
while z='t' do begin
new(TEMP);
write('Podaj wartosc: ');
readln(TEMP^.W);
DODAJ(TEMP,L);
writeln('Czy podajesz dalej elementy (t/n)');
readln(z);
end;
99
Tworzymy kolejny element i podajemy jego wartość
33
Jeśli lista ma już początek to
jest listą NIEPUSTĄ
procedure DODAJ(element :E P ;list:EL) begin
if list^.P <> NIL then begin
list^.K^.N := element;
list^.K := element;
end else begin
list^.P:=element;
list^.K:=list^.P;
end;
end;
procedure POKAZ(list:EL);
var el : EP;
begin
el:= list^.P;
while el <> NIL do begin
write(el^.W,';');
el := el^.N;
end;
end;
begin
writeln('TWORZE LISTE');
new(L);
z:='t';
while z='t' do begin
new(TEMP);
write('Podaj wartosc: ');
readln(TEMP^.W);
DODAJ(TEMP,L);
writeln('Czy podajesz dalej elementy (t/n)');
readln(z);
end;
Jeśli lista ma już początek to jest listą NIEPUSTĄ
Tworzymy kolejny element i podajemy jego wartość
Dodajemy element do listy
9933
Ustawiamy wskaźnik
na następny element
procedure DODAJ(element :E P ;list:EL) begin
if list^.P <> NIL then begin
list^.K^.N := element;
list^.K := element;
end else begin
list^.P:=element;
list^.K:=list^.P;
end;
end;
procedure POKAZ(list:EL);
var el : EP;
begin
el:= list^.P;
while el <> NIL do begin
write(el^.W,';');
el := el^.N;
end;
end;
begin
writeln('TWORZE LISTE');
new(L);
z:='t';
while z='t' do begin
new(TEMP);
write('Podaj wartosc: ');
readln(TEMP^.W);
DODAJ(TEMP,L);
writeln('Czy podajesz dalej elementy (t/n)');
readln(z);
end;
Jeśli lista ma już początek to jest listą NIEPUSTĄ
Tworzymy kolejny element i podajemy jego wartość
Dodajemy element do listy
Ustawiamy wskaźnik na następny element
99 33
Ustawiamy nowy
koniec listy na nowy
element listy
procedure DODAJ(element :E P ;list:EL) begin
if list^.P <> NIL then begin
list^.K^.N := element;
list^.K := element;
end else begin
list^.P:=element;
list^.K:=list^.P;
end;
end;
procedure POKAZ(list:EL);
var el : EP;
begin
el:= list^.P;
while el <> NIL do begin
write(el^.W,';');
el := el^.N;
end;
end;
begin
writeln('TWORZE LISTE');
new(L);
z:='t';
while z='t' do begin
new(TEMP);
write('Podaj wartosc: ');
readln(TEMP^.W);
DODAJ(TEMP,L);
writeln('Czy podajesz dalej elementy (t/n)');
readln(z);
end;
Jeśli lista ma już początek to jest listą NIEPUSTĄ
Tworzymy kolejny element i podajemy jego wartość
Dodajemy element do listy
Ustawiamy wskaźnik na następny element
Ustawiamy nowy koniec listy na nowy element listy
99 33
Dodając kolejny element do listy, ustawiamy jej nowy koniec
44
procedure DODAJ(element :E P ;list:EL) begin
if list^.P <> NIL then begin
list^.K^.N := element;
list^.K := element;
end else begin
list^.P:=element;
list^.K:=list^.P;
end;
end;
procedure POKAZ(list:EL);
var el : EP;
begin
el:= list^.P;
while el <> NIL do begin
write(el^.W,';');
el := el^.N;
end;
end;
begin
writeln('TWORZE LISTE');
new(L);
z:='t';
while z='t' do begin
new(TEMP);
write('Podaj wartosc: ');
readln(TEMP^.W);
DODAJ(TEMP,L);
writeln('Czy podajesz dalej elementy (t/n)');
readln(z);
end;
Jeśli lista ma już początek to jest listą NIEPUSTĄ
Tworzymy kolejny element i podajemy jego wartość
Dodajemy element do listy
Ustawiamy wskaźnik na następny element
Ustawiamy nowy koniec listy na nowy element listy
99 33
Dodając kolejny element do listy, ustawiamy jej nowy koniec
44
procedure DODAJ(element :E P ;list:EL) begin
if list^.P <> NIL then begin
list^.K^.N := element;
list^.K := element;
end else begin
list^.P:=element;
list^.K:=list^.P;
end;
end;
procedure POKAZ(list:EL);
var el : EP;
begin
el:= list^.P;
while el <> NIL do begin
write(el^.W,';');
el := el^.N;
end;
end;
begin
writeln('TWORZE LISTE');
new(L);
z:='t';
while z='t' do begin
new(TEMP);
write('Podaj wartosc: ');
readln(TEMP^.W);
DODAJ(TEMP,L);
writeln('Czy podajesz dalej elementy (t/n)');
readln(z);
end;
99 33 44
zmienna pomocnicza
wskazująca na wybrany
element listy
procedure DODAJ(element :E P ;list:EL) begin
if list^.P <> NIL then begin
list^.K^.N := element;
list^.K := element;
end else begin
list^.P:=element;
list^.K:=list^.P;
end;
end;
procedure POKAZ(list:EL);
var el : EP;
begin
el:= list^.P;
while el <> NIL do begin
write(el^.W,';');
el := el^.N;
end;
end;
begin
writeln('TWORZE LISTE');
new(L);
z:='t';
while z='t' do begin
new(TEMP);
write('Podaj wartosc: ');
readln(TEMP^.W);
DODAJ(TEMP,L);
writeln('Czy podajesz dalej elementy (t/n)');
readln(z);
end;
99 33 44
zaczynamy wyświetlanie od
początku
procedure DODAJ(element :E P ;list:EL) begin
if list^.P <> NIL then begin
list^.K^.N := element;
list^.K := element;
end else begin
list^.P:=element;
list^.K:=list^.P;
end;
end;
procedure POKAZ(list:EL);
var el : EP;
begin
el:= list^.P;
while el <> NIL do begin
write(el^.W,';');
el := el^.N;
end;
end;
begin
writeln('TWORZE LISTE');
new(L);
z:='t';
while z='t' do begin
new(TEMP);
write('Podaj wartosc: ');
readln(TEMP^.W);
DODAJ(TEMP,L);
writeln('Czy podajesz dalej elementy (t/n)');
readln(z);
end;
99 33 44
wyświetlamy dopóki wskaźnik wskazuje na element NIE
PUSTY (nie NIL)
procedure DODAJ(element :E P ;list:EL) begin
if list^.P <> NIL then begin
list^.K^.N := element;
list^.K := element;
end else begin
list^.P:=element;
list^.K:=list^.P;
end;
end;
procedure POKAZ(list:EL);
var el : EP;
begin
el:= list^.P;
while el <> NIL do begin
write(el^.W,';');
el := el^.N;
end;
end;
begin
writeln('TWORZE LISTE');
new(L);
z:='t';
while z='t' do begin
new(TEMP);
write('Podaj wartosc: ');
readln(TEMP^.W);
DODAJ(TEMP,L);
writeln('Czy podajesz dalej elementy (t/n)');
readln(z);
end;
33 44
wyświetlamy zawartość elementu
99
procedure DODAJ(element :E P ;list:EL) begin
if list^.P <> NIL then begin
list^.K^.N := element;
list^.K := element;
end else begin
list^.P:=element;
list^.K:=list^.P;
end;
end;
procedure POKAZ(list:EL);
var el : EP;
begin
el:= list^.P;
while el <> NIL do begin
write(el^.W,';');
el := el^.N;
end;
end;
begin
writeln('TWORZE LISTE');
new(L);
z:='t';
while z='t' do begin
new(TEMP);
write('Podaj wartosc: ');
readln(TEMP^.W);
DODAJ(TEMP,L);
writeln('Czy podajesz dalej elementy (t/n)');
readln(z);
end;
wyświetlamy zawartość elementu
33 44
ustawiamy sie do
wyświetlania następnika - kolejnego elementu listy
99
procedure DODAJ(element :E P ;list:EL) begin
if list^.P <> NIL then begin
list^.K^.N := element;
list^.K := element;
end else begin
list^.P:=element;
list^.K:=list^.P;
end;
end;
procedure POKAZ(list:EL);
var el : EP;
begin
el:= list^.P;
while el <> NIL do begin
write(el^.W,';');
el := el^.N;
end;
end;
begin
writeln('TWORZE LISTE');
new(L);
z:='t';
while z='t' do begin
new(TEMP);
write('Podaj wartosc: ');
readln(TEMP^.W);
DODAJ(TEMP,L);
writeln('Czy podajesz dalej elementy (t/n)');
readln(z);
end;
wyświetlamy zawartość elementu
99 44
ustawiamy sie do
wyświetlania następnika - kolejnego elementu listy
33
procedure DODAJ(element :E P ;list:EL) begin
if list^.P <> NIL then begin
list^.K^.N := element;
list^.K := element;
end else begin
list^.P:=element;
list^.K:=list^.P;
end;
end;
procedure POKAZ(list:EL);
var el : EP;
begin
el:= list^.P;
while el <> NIL do begin
write(el^.W,';');
el := el^.N;
end;
end;
begin
writeln('TWORZE LISTE');
new(L);
z:='t';
while z='t' do begin
new(TEMP);
write('Podaj wartosc: ');
readln(TEMP^.W);
DODAJ(TEMP,L);
writeln('Czy podajesz dalej elementy (t/n)');
readln(z);
end;
wyświetlamy zawartość elementu
99 33
ustawiamy sie do
wyświetlania następnika - kolejnego elementu listy
44
procedure DODAJ(element :E P ;list:EL) begin
if list^.P <> NIL then begin
list^.K^.N := element;
list^.K := element;
end else begin
list^.P:=element;
list^.K:=list^.P;
end;
end;
procedure POKAZ(list:EL);
var el : EP;
begin
el:= list^.P;
while el <> NIL do begin
write(el^.W,';');
el := el^.N;
end;
end;
begin
writeln('TWORZE LISTE');
new(L);
z:='t';
while z='t' do begin
new(TEMP);
write('Podaj wartosc: ');
readln(TEMP^.W);
DODAJ(TEMP,L);
writeln('Czy podajesz dalej elementy (t/n)');
readln(z);
end;
wyświetlamy zawartość elementu ustawiamy sie do wyświetlania następnika - kolejnego elementu listy
99 33 44