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

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

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