Напишите логическую функцию, которая определяет, являются ли два переданные ей числа взаимно простыми, то есть, не имеющими общих делителей, кроме 1.
Python функция простая без math и заворотов ) Простой!
Ответы
Объяснение:
function getEasyDivisor(num1, num2){
if(getNod(num1, num2)==1){
alert('Эти числа взаимно простые')
}else{
alert('Числа НЕ взаимно простые')
}
}
console.log(getEasyDivisor(100,300));
function getNod(num1, num2){ // возвращает наименьший общий делитель
let resNod=[];
let arr1=getDivisor(num1);
let arr2=getDivisor(num2);
resNod=getObsch(arr1, arr2);
function getMinOfArray(resNod) {
return Math.min.apply(null, resNod);
}
return getMinOfArray(resNod);
}
function getObsch(arr1, arr2){ // сравнивая два массива,выводит общие делители
let resObsch=[];
for(let elem of arr1){
if(!inArr(elem,arr2)){
resObsch.push(elem)
}
}return resObsch;
}
function getDivisor(num){ // находит делители числа.
let resDiv=[];
for(let i=1; i<num; i++){
if(num%i==0){
resDiv.push(i);
}
}return resDiv;
}
function inArr(elem,arr){ // ищет элем. в массиве.
return arr.indexOf(elem)===-1;
}