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

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

Показать ответ
Ответ:
hoper123
hoper123
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-бота