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

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

Показать ответ
Ответ:
Егор4ik18
Егор4ik18
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-бота