В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
liq2354234
liq2354234
12.03.2022 03:27 •  Информатика

(pascal abc/turbo)
даны четыре числовых массива f1, f2, f3, f4. вывести имя того из этих массивов, который имеет наибольшее число элементов (если таких элементов более одного, то вывести имя одного из них). описать в программе функцию l(f), значение которой равно количеству элементов массива.

Показать ответ
Ответ:
Фадиля
Фадиля
10.10.2020 12:53

const

 n = 100; {максимальное число элементов в массиве}

 b = -32768;{константа для заливки массивов }

type

 tF = array[1..n] of integer;

function l(f: tF): integer;

var

 i, k: integer;

begin

 k := 0;

 l := n;

 for i := 1 to n do

   if f[i] = b then

   begin

     l := i - 1;

     exit

   end;

 k := k + 1;

end;

var

 i, k, p1, p2: integer;

 f1, f2, f3, f4: tF;

 s: string[2];

begin

 { заполним все массивы константой b }

 { если при чтении массива константа b, все элементы прочтены }

 for i := 1 to n do

 begin

   f1[i] := b;

   f2[i] := b;

   f3[i] := b;

   f4[i] := b;

 end;

 randomize;

 { f1 }

 k := random(100) + 1;

 write('Длина 1: ', k, ' ');

 for i := 1 to k do

   f1[i] := random(199) - 99; { число от -99 до 99 }

 p1 := l(f1);

 writeln(', вычислена длина ', p1);

 s := 'f1';

 { f2 }

 k := random(100) + 1;

 write('Длина 2: ', k);

 for i := 1 to k do  

   f2[i] := random(199) - 99;

 p2 := l(f2);

 writeln(', вычислена длина ', p2);

 if p2 > p1 then

 begin

   p1 := p2;

   s := 'f2';

 end;

 { f3 }

 k := random(100) + 1;

 write('Длина 3: ', k, ' ');

 for i := 1 to k do  

   f3[i] := random(199) - 99;

 p2 := l(f3);

 writeln(', вычислена длина ', p2);

 if p2 > p1 then

 begin

   p1 := p2;

   s := 'f3';

 end;

 { f4 }

 k := random(100) + 1;

 write('Длина 4: ', k, ' ');

 for i := 1 to k do  

   f4[i] := random(199) - 99;

 writeln(', вычислена длина ', p2);

 if p2 > p1 then

   s := 'f4';

 write('Самый длинный массив ', s);

end.

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота