Найти ошибку в результирующем файле должно выводится буква встречающаяся чаще всего и количество но он выходит алфавит.вот код:
uses crt;

const
lat = ['a'..'z'];
type
mas = array['a'..'z'] of integer;
procedure strtomas(s: string; var a: mas);
var
c: char;
i: integer;
begin
for c : = 'a' to 'z' do
a[c] : = 0;
for i : = 1 to length(s) do
if s[i] in lat then
a[upcase( : = a[upcase( + 1;
end;

procedure max(var a: mas; s,s1: string);
var
c: char;
i,k,j: integer;
begin
k : = 0;
readln(s);

for c : = 'a' to 'z' do
k: =0;
for i: =1 to length(s) do

if s[i]=c then k: =k+1
end;

procedure mastostr(var a: mas; var sres: string; s,s1: string);
var
c, k: char;
maxcnt: integer;

begin
sres : = '';

for c : = 'a' to 'z' do

begin
if a[c] > 0 then
max(a,s,s1);

sres : = sres + c + ' ' + k + ' ';
if length(sres) > 2 then
delete(sres, length(sres) - 1, 2);
end;
end;

procedure filetofile(var f1,f2: text);
var sres,s,s1: string; a: mas;
begin
reset(f1); rewrite(f2);
while not eof(f1) do begin
readln(f1,s);
if s < > '' then begin
strtomas(s,a);
max(a,s,s1);
mastostr(a, sres,s,s1);
end
else sres: = '';
writeln(f2, sres);
end;
close(f1); close(f2);
end;

var
f1, f2: text;
fname1, fname2: string;

begin
clrscr;
task;
write('введите имя исходного файла ');
readln(fname1);
assign(f1, fname1);

if fileexists(fname1) then begin

write('введите имя результата ');
readln(fname2);
assign(f2, fname2);
filetofile(f1, f2);
end
else writeln('файл с таким именем не существует');
end.

merlinina74 merlinina74    2   30.11.2019 12:34    0

Ответы
Morenova123456 Morenova123456  30.11.2019 15:03
Акакой это класс если девятый готова
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика