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

Напишите программу, которая генерирует целочисленный массив, состоящий из 40 элементов в диапазоне от 0 до 120, подсчитывает количество элементов равных 30, подсчитывает сумму всех элементов массива, подсчитывает среднее арифметическое, находит максимальный элемент массива и его номер, минимальный элемент и его номер. все результаты выводит на экран.
с amax и imax. 9 класс,

Показать ответ
Ответ:
5454540
5454540
10.10.2020 13:42

PascalABC.NET

1. Короткое, внешне изящное, но крайне неэффективное решение, поскольку массив просматривается ПЯТЬ раз.

begin

 var a := ArrRandom(40, 0, 120);

 a.Println;

 Println('Элементов, равных 30:', a.Count(p -> p = 30));

 Println('Сумма элементов:', a.Sum);

 Println('Среднее арифметическое элементов:', a.Average);

 var (imax, imin) := (a.IndexMax, a.IndexMin);

 Println('Максимальный элемент №', imax + 1, '=', a[imax]);

 Println('Минимальный элемент №', imin + 1, '=', a[imin])

end.

2. Более длинное решение, но с ОДНИМ просмотром массива и поэтому эффективное.

begin

 var a := ArrRandom(40, 0, 120);

 a.Println;

 var (k, s, imax, imin) := (0, 0, 0, 0);

 for var i := 0 to a.High do

 begin

   if a[i] = 30 then

     Inc(k);

   s += a[i];

   if a[i] > a[imax] then

     imax := i

   else if a[i] < a[imin] then

     imin := i  

 end;

 Println('Элементов, равных 30:', k);

 Println('Сумма элементов:', s);

 Println('Среднее арифметическое элементов:', s / 40);

 Println('Максимальный элемент №', imax + 1, '=', a[imax]);

 Println('Минимальный элемент №', imin + 1, '=', a[imin])

end.

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