Dobrý den, potřebuji poradit s tímto zadáním:
{Zadani: Vytvorte program, ktery ze vstupniho souboru cte text slozeny z vet ukoncenych teckou.
Slova ve vete jsou oddelena jednou nebo vice mezerami.
Program vytiskne zadany text, vypocte prumerny pocet slov ve vete a vytiskne vsechny vety,
ktere maji vetsi pocet slov nez je prumerny pocet.}
Všechno až na zobrazení vět s počtem slov větším než průměr, budu tedy rád za každou radu a nakopnutí.
program zadani8;
uses crt;
Procedure Zobrazeni;
var
soub:text;
vypis:string;
begin
{zobrazeni textoveho souboru}
writeln('Nacteny soubor obsahuje tento text: ');
writeln(' ');
assign (soub,'C:\text.txt');
reset(soub);
while not EOF(soub) do
begin
readln(soub,vypis);
writeln(vypis);
end;
close(soub);
writeln(' ');
end;
Procedure PrumPocSlov;
const
konecVety=['.'];
konecSlova=[' '];
var
soubor:text;
pocetVet, pocetSlov:integer;
znak:char;
pps:real;
begin
assign (soubor,'C:\text.txt');
reset (soubor);
pocetVet:=0;
pocetSlov:=0;
znak:=' ';
while not EOF(soubor) do
begin
if EOLN(soubor) then
begin
readln(soubor);
znak:=' ';
end
else if not EOF(soubor) then
begin
if not (znak in (konecSlova+konecVety)) then
begin
while not (znak in (konecSlova+konecVety)) and not (EOF(soubor)) and not (EOLN(soubor)) do read(soubor,znak);
Inc (pocetSlov);
end;
if znak in konecVety then
Inc(pocetVet);
while (znak in (konecSlova+konecVety)) and not (EOF(soubor)) and not (EOLN(soubor)) do read (soubor,znak);
end;
end;
close(soubor);
{vypis statistiky souboru}
pps:=(pocetSlov/pocetVet);
writeln('Pocet vet: ',pocetVet);
writeln('Pocet slov: ',pocetSlov);
writeln('Prumerny pocet slov ve vete: ', pps:0:1);
end;
Procedure ZobrazeniVet;
begin
writeln('Vety, ktere maji vetsi pocet slov nez je prumerny pocet: ');
end;
{hlavni program}
begin
clrscr;
Zobrazeni;
PrumPocSlov;
ZobrazeniVet;
readln;
end.