Задача:
Напишите программу, которая генерирует случайный набор из 10 чисел и выводит их сумму и среднее значение. JavaScript.
План:
- Алгоритм решения
- Код программы
- Примеры входных данных и ожидаемых результатов
- Объяснение кода программы
- Блок-схема
Алгоритм решения:
-
Создание пустого массива
numbers
для хранения случайных чисел. -
Использование цикла
for
для генерации 10 случайных чисел:- Цикл выполняется 10 раз (от 0 до 9)
- В каждой итерации:
- Генерируется случайное число от 1 до 100 с помощью
Math.random()
иMath.floor()
- Сгенерированное число добавляется в массив
numbers
с помощью методаpush()
- Генерируется случайное число от 1 до 100 с помощью
-
Вычисление суммы всех чисел в массиве:
- Используется метод
reduce()
для итерации по массиву - Каждый элемент прибавляется к аккумулятору
- Начальное значение аккумулятора установлено в 0
- Используется метод
-
Вычисление среднего значения:
- Сумма делится на количество элементов в массиве (
numbers.length
)
- Сумма делится на количество элементов в массиве (
-
Вывод результатов:
- Выводится сгенерированный массив чисел
- Выводится сумма всех чисел
- Выводится среднее значение
Код программы на языке JavaScript:
Код JavaScript
const numbers = [];
for (let i = 0; i < 10; i++) {
numbers.push(Math.floor(Math.random() * 100) + 1);
}
const sum = numbers.reduce((acc, curr) => acc + curr, 0);
const average = sum / numbers.length;
console.log("Generated numbers:", numbers);
console.log("Sum:", sum);
console.log("Average:", average);
Примеры входных данных и ожидаемых результатов:
Пример 1:
Вывод:
Generated numbers: [23, 45, 12, 67, 89, 34, 56, 78, 9, 31]
Sum: 444
Average: 44.4
Пример 2:
Вывод:
Generated numbers: [5, 18, 72, 39, 61, 94, 27, 83, 50, 16]
Sum: 465
Average: 46.5
Пример 3:
Вывод:
Generated numbers: [42, 13, 97, 65, 30, 8, 54, 76, 21, 88]
Sum: 494
Average: 49.4
Объяснение кода программы:
-
Инициализация массива:
Создается пустой массивconst numbers = [];
numbers
, который будет использоваться для хранения сгенерированных чисел. -
Генерация случайных чисел:
Циклfor (let i = 0; i < 10; i++) { numbers.push(Math.floor(Math.random() * 100) + 1); }
for
выполняется 10 раз. На каждой итерации генерируется случайное число от 1 до 100 с помощьюMath.random()
, округляется до целого числа функциейMath.floor()
и добавляется в массивnumbers
методомpush()
. -
Вычисление суммы:
Используется методconst sum = numbers.reduce((acc, curr) => acc + curr, 0);
reduce()
для суммирования всех элементов массиваnumbers
. Результат сохраняется в переменнуюsum
. -
Вычисление среднего значения:
Среднее значение вычисляется путем деления суммы на количество элементов в массиве и сохраняется в переменнуюconst average = sum / numbers.length;
average
. -
Вывод результатов:
Выводятся в консоль сгенерированные числа, их сумма и среднее значение.console.log("Generated numbers:", numbers); console.log("Sum:", sum); console.log("Average:", average);