Как найти среднее арифметическое массива
Перейти к содержимому

Как найти среднее арифметическое массива

  • автор:

Как найти среднее арифметическое массива javascript

Хотел бы предложить вариант нахождения среднего арифметического массива с использованием цикла for :

const arr = [1, 3, 5, 7, 9, 11]; const getAverage = (numbers) =>  let sum = 0; // объявляем переменную, в которой будет храниться сумма всех чисел массива for (let i = 0; i  numbers.length; i += 1)  // инициализируем цикл sum += numbers[i]; // на каждой итерации прибавляем к сумме значение текущего элемента массива > return sum / numbers.length; // возвращаем среднее арифметическое >; console.log(getAverage(arr)); // => 6 

Вывести элементы массива, которые больше среднего арифметического

Дан одномерный массив. Найти среднее арифметическое его элементов. Вывести на экран только те элементы массива, которые больше найденного среднего арифметического.

  • a — массив;
  • sum — сумма элементов массива;
  • avrg — среднее значение.

Алгоритм решения задачи:

  1. Заполняем массив (например, случайными числами).
  2. Переменной sum изначально присваиваем значение 0.
  3. Вычисляем сумму элементов, в цикле перебирая массив и добавляя значение каждого к переменной sum .
  4. Находим среднее арифметическое путем деления суммы на количество элементов (хранится в константе N ).
  5. Выводим на экран весь массив и найденное среднее значение. (Это не обязательно, но необходимо для удобства.)
  6. Снова в цикле перебираем массив. Если очередной элемент больше среднего арифметического, то выводим этот элемент на экран.
begin randomize; for i := 1 to N do a[i] := random(50)+1; sum := 0; for i := 1 to N do sum := sum + a[i]; avrg := sum/N; // весь массив for i := 1 to N do write(a[i]:3); writeln; writeln('Среднее арифметическое: ', avrg:4:2); // больше avrg for i := 1 to N do if a[i] > avrg then write(a[i]:3); writeln; end.

Пример выполнения программы:

 34 27 47 46 15 36 3 6 39 38 Среднее арифметическое: 29.10 34 47 46 36 39 38

Как найти среднее арифметическое в массиве java

Найти среднее арифметическое всех чисел в массиве можно разными способами. Можно перебрать весь массив при помощи цикла, сложить все элементы массива и поделить на размер массива. Можно также использовать стримы, этот вариант будет более лаконичный. Рассмотрим пример со стримами:

import java.util.Arrays; int[] coll = 1, 2, 3, 4, 5, 6>; var average = Arrays.stream(coll) .average() .getAsDouble(); System.out.println(average); // => 3.5 

Среднее арифметическое элементов массива

Создаем цикл, который генерирует элементы массивов. И генерируем числа в диапазоне от 0 до 5 включительно. Если подзабыли как генерируются числа в Java, прочитайте вот эту статью «Генерация случайных чисел в Java»

for ( int i = 0 ; i < 5 ; i ++ ) < mas1 [ i ] = ( int ) ( Math . random ( ) * 6 ) ; mas2 [ i ] = ( int ) ( Math . random ( ) * 6 ) ;

Далее выводим массивы в строку с помощью класса Arrays

System . out . println ( Arrays . toString ( mas1 ) ) ;
System . out . println ( Arrays . toString ( mas2 ) ) ;

Далее создаем переменные для хранения средних арифметических массивов

double average1 = 0 ;
double average2 = 0 ;

После этого находим сумму элементов массивов, а потом делим сумму на количество элементов для нахождения среднего арифметического

for ( int i = 0 ; i < 5 ; i ++ ) < average1 += mas1 [ i ] ; average2 += mas2 [ i ] ;

После этого сравниваем средние арифметические и выводим соответствующую фразу

if ( average1 > average1 ) <

System . out . println ( «Среднее арифметическое первого массива (» + average1 + «) больше среднего арифметического » +

«второго массива (» + average2 + «)» ) ;
> else if ( average1 < average2 ) <

System . out . println ( «Среднее арифметическое первого массива (» + average1 + «) меньше среднего арифметического » +

«второго массива (» + average2 + «)» ) ;
System . out . println ( «Средние арифметические массивов равны (» + average1 + «)» ) ;

  • ← Является ли массив возрастающей последовательностью
  • Создать второй массив из четных элементов первого массива →

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *