JavaScript: вычислить наибольший общий делитель между двумя или более числами / массивами
Основной JavaScript (синтаксис ES6): упражнение 223 с решением
Напишите программу на JavaScript для вычисления наибольшего общего делителя между двумя или более числами / массивами.
Пример решения:
HTML-код:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Calculate the greatest common divisor between two or more numbers/arrays</title>
</head>
<body>
</body>
</html>
Код JavaScript:
//#Source https://bit.ly/2neWfJ2
const gcd = (...arr) => {
const _gcd = (x, y) => (!y ? x : gcd(y, x % y));
return [...arr].reduce((a, b) => _gcd(a, b));
};
console.log(gcd(8, 36));
console.log(gcd(...[12, 8, 32]));
Пример вывода:
4 4
Иллюстрированная презентация:
Блок - схема:
Демонстрация в реальном времени:
См. Pen javascript-basic-упражнение-223-1 от w3resource ( @ w3resource ) на CodePen .
Улучшите этот пример решения и опубликуйте свой код через Disqus
Предыдущий: Напишите программу JavaScript, которая инициализирует массив, содержащий числа в указанном диапазоне, где начало и конец включаются, а соотношение между двумя терминами является шагом. Возвращает ошибку, если шаг равен 1.
Далее: Напишите программу JavaScript для удаления тегов HTML / XML из строки.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования