JavaScript: Инициализирует массив, содержащий числа в указанном диапазоне
Основы JavaScript (синтаксис ES6): упражнение 222 с решением
Напишите программу на JavaScript, которая инициализирует массив, содержащий числа в указанном диапазоне, где начало и конец включаются, а соотношение между двумя терминами является шагом. Возвращает ошибку, если шаг равен 1.
Пример решения:
HTML-код:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Initializes an array containing the numbers in the specified range</title>
</head>
<body>
</body>
</html>
Код JavaScript:
//#Source https://bit.ly/2neWfJ2
const geometricProgression = (end, start = 1, step = 2) =>
Array.from({ length: Math.floor(Math.log(end / start) / Math.log(step)) + 1 }).map(
(v, i) => start * step ** i
);
console.log(geometricProgression(256));
console.log(geometricProgression(256, 3));
console.log(geometricProgression(256, 1, 4));
Пример вывода:
[1,2,4,8,16,32,64,128,256] [3,6,12,24,48,96,192] [1,4,16,64,256]
Иллюстрированная презентация:
Блок - схема:
Демонстрация в реальном времени:
См. Pen javascript-basic-упражнение-222-1 от w3resource ( @ w3resource ) в CodePen .
Улучшите этот пример решения и опубликуйте свой код через Disqus
Предыдущий: Напишите программу на JavaScript, чтобы получить строку вида HH: MM: SS из объекта Date.
Далее: Напишите программу на JavaScript для вычисления наибольшего общего делителя между двумя или более числами / массивами.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования