М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
julija74
julija74
23.05.2023 10:15 •  Информатика

Найти ошибку в коде не находит максимальные значения.: в исходном текстовом файле записаны строки, содержащие текст на языке.
требуется написать программу, которая для каждой строки исходного файла будет
определять и выводить в результирующий файл букву, встречающуюся в этой
строке чаще всего, и количество там таких букв. строчные и прописные буквы при этом
считаются не различимыми. если искомых букв несколько, то программа должна выводить на
экран первую из них по алфавиту.
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; var s: string; var k: char; amax: integer);
var
c: char;
begin
amax : = 0;
c : = 'a';
for c : = 'a' to 'z' do
begin
strtomas(s, a);
if a[c] > amax then
amax : = a[c];
k : = c;
end;
end;

procedure mastostr(var a: mas; var sres: string);
var
c, k: char;
amax: integer;
s: string;
begin
sres : = '';
k : = ' ';
amax : = 0;
for c : = 'a' to 'z' do
begin
if a[c] > 0 then
max(a, s, k, amax);
sres : = sres + k + ' ' + amax + ',';
if length(sres) > 2 then
delete(sres, length(sres) - 1, 2);
end;
end;

procedure filetofile(var f1, f2: text);
var
sres, s: string;
a: mas;
begin
reset(f1);
while not eof(f1) do
begin
readln(f1, s);
if s < > '' then begin
strtomas(s, a);
mastostr(a, sres);
end
else sres : = '';
rewrite(f2);
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.

👇
Открыть все ответы
Ответ:
nastusya1709
nastusya1709
23.05.2023

Ақпарат – ұғымы күнделікті өмірден бастап техникалық салада пайдаланылатын көп мағыналы ұғым. Жалпы алғанда бұл ұғым шектеу, байланыс, бақылау, форма, инструкция, білiм, мағына, құрылым, бейнелеу, сезіну тағы басқа ұғымдармен тығыз байланысты. Көп адам бұл жайлы Білім дәуірі немесе білім қоғамы тудырған Ақпарат дәуірі туралы айта бастады; ақпараттық қоғам, ақпараттық технологиялар, тіпті информатика, ақпарат ғылымы және компьютер ғылымы назарға көп түсуде, ал “ақпарат” сөзі білдіре бастаған мағыналары ұқыпсыз пайдаланылуда.

4,4(36 оценок)
Ответ:
avrika
avrika
23.05.2023

program z1;

const n=8;

var a:array [1..n] of integer;

i,m: integer;

begin

writeln ('Результаты заплыва: ');

for i:= 1 to n do

begin

write(i,'-й: ');

readln(a[i])

end;

writeln;

m:=a[i];

for i:= 1 to n do

if a[i]<m then m:=a[i];

writeln('Лучший: ',m)

end.

program z2;

const n=12;

var a:array [1..n] of integer;

i,m: integer;

begin

writeln ('Массив: ');

for i:= 1 to n do

begin

write(i,'-й элемент: ');

readln(a[i])

end;

writeln;

m:=a[i];

for i:= 1 to n do

if a[i]>m then m:=a[i];

writeln('Максимальный: ',m)

end.

Объяснение:

Сначала вводим элементы массива.

Затем предполагаем, что первый элемент наименьший (1 задача) или наибольший (2 задача). Потом сравниваем элементы массива с переменной, в которую записали первый элемент, и меняем переменную, если условие срабатывает. Выводим результат на экран.

4,4(81 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ