Bardzobym prosila o pomoc w znalezieniu bledu, bo niedlugo mam kolosa i musze to zrozumiec.
Dzialanie programu: wypisuje wszystkie znaki jakie wystapily w pliku wraz z czestotliwoscia wystapienia, program jeszcze powienien napisac jaki znak wystepuje najczesciej i usunac liste (mile widziane wskazowki)
program czestotliwosc;
uses crt;
type Plitera=^Tlitera;
Tlitera=record
c:char;
k:integer;
nast:Plitera;
end;
var poc:Plitera;
plik:text;
procedure wczytaj;
var plik:text;
s:char;
begin
poc:=nil;
assign(plik,'dyskurs.txt');
reset(plik);
while not eof(plik) do
begin
read(plik,s);
if not(s in [#32,#10,#13]) then
wstaw(upcase(s)); <--------- w tym miesjcu pokazuje mi ze nie moze
znalezc wstaw
end;
close(plik);
end;
procedure wstaw(c:char);
var p,q,r:Plitera;
begin
r:=nil;
q:=poc;
while (q<>nil) and (q^.c<c) do
begin
r:=q;
q:=q^.nast;
end;
if (q<>nil) and (c=q^.c) then q^.k:=q^.k+1
else
begin
new(p);
p^.c:=c;
p^.k:=1;
p^.nast:=q;
if r=nil then poc:=p
else r^.nast:=p;
end;
end;
procedure wypisz;
var p:Plitera;
begin
p:=poc;
while p<>nil do
begin
writeln(p^.c,' ',p^.k:3);
p:=p^.nast;
end;
end;
begin
wczytaj;
wypisz;
readkey;
end.
Z gory Dzieki za pomoc!!!!!