кодесурса
«JavaScript

JavaScript: найдите самый большой общий делитель или GCD из более чем 2 целых

script1adsense2code
script1adsense3code

JavaScript Math: Упражнение-9 с решением

Напишите функцию JavaScript, чтобы найти GCD (наибольший общий делитель) из более чем 2 целых чисел.

Тестовые данные :
console.log (gcd_more_than_two_numbers ([3,15,27]));
console.log (gcd_more_than_two_numbers ([5,10,15,25]));
Выход :
3
5

Пример решения: -

HTML-код:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>GCD (greatest common divisor) of more than 2 integers</title>
</head>
<body>
</body>
</html>

Код JavaScript:

function gcd_more_than_two_numbers(input) {
  if (toString.call(input) !=="[object Array]")  
        return  false;  
  var len, a, b;
	len = input.length;
	if ( !len ) {
		return null;
	}
	a = input[ 0 ];
	for ( var i = 1; i < len; i++ ) {
		b = input[ i ];
		a = gcd_two_numbers( a, b );
	}
	return a;
}
function gcd_two_numbers(x, y) {
  if ((typeof x !=='number') || (typeof y !=='number')) 
    return false;
  x = Math.abs(x);
  y = Math.abs(y);
  while(y) {
    var t = y;
    y = x % y;
    x = t;
  }
  return x;
}
console.log(gcd_more_than_two_numbers([3,15,27]));
console.log(gcd_more_than_two_numbers([5,10,15,25]));

Пример вывода:

 3
5

Блок - схема:

«Блок-схема:

Демонстрация в реальном времени:

См. Pen javascript-math-упражнение-9 от w3resource ( @ w3resource ) на CodePen .


Улучшите этот пример решения и опубликуйте свой код через Disqus

Предыдущий: Напишите функцию JavaScript, чтобы получить наибольший общий делитель (gcd) из двух целых чисел.
Далее: напишите функцию JavaScript для получения наименьшего общего кратного (LCM) из двух чисел.

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code