Запросить 2 числа и найти НОД на js
Хотел узнать, на сколько верно мое решение? Заранее спасибо!
/*Запросить 2 числа и найти только наибольший общий делитель.*/
alert('Введите 2 число, что бы найти НОД')
let numb1 = prompt('Введите первое число');
let numb2 = prompt('Введите второе число');
let numb3;
calc(numb1, numb2)
alert('НОД чисел ' + numb1 + ' и ' + numb2 + ' будет: ' + numb3)
function calc(a, b) {
let c;
while (a != b) {
if (a > b) {
a = a - b;
} else
if (a < b) {
c = a;
a = b;
b = c;
}
}
return numb3 = a
}
Ответы (1 шт):
Автор решения: Александр Рогонов
→ Ссылка
Ну можно посимпатичнее, вот так
/*Запросить 2 числа и найти только наибольший общий делитель.*/
const nod = (n, m) => {
if (m !== 0) {
const k = n % m;
return nod(m, k);
}
return n;
};
alert('Введите 2 число, что бы найти НОД')
let numb1 = prompt('Введите первое число');
let numb2 = prompt('Введите второе число');
alert('НОД чисел ' + numb1 + ' и ' + numb2 + ' будет: ' + nod(numb1, numb2));