Предмет: Информатика, автор: leonidbystrizkij

Напишите логическую функцию, которая определяет, являются ли два переданные ей числа взаимно простыми, то есть, не имеющими общих делителей, кроме 1.
Python функция простая без math и заворотов ) Простой!

Ответы

Автор ответа: danyaspin18
0

Объяснение:

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;

}

Похожие вопросы