Search This Blog

2026/10/15

Javascript:Check numbers are co prime using divisor list

 



function getDivisor(num) {
    let divisor = [];

    for (let i = 2; i <= num; i++) {   // fixed: was i <= num - 1
        if (num % i === 0) {
            divisor.push(i);
        }
    }

    return divisor;
}

function areCoPrime(num1, num2) {
    console.log(`First Number:${num1} Second Number ${num2}`);

    let divisor1 = getDivisor(num1);
    let divisor2 = getDivisor(num2);

    console.log("Divisor", divisor1);
    console.log("Divisor", divisor2);

    let common = divisor1.filter(num => divisor2.includes(num));

    if (common.length > 0) {
        return "Pair is not co-prime";
    } else {
        return "Pair is co-prime";
    }
}

console.log(areCoPrime(6, 9));
// Pair is not co-prime

console.log(areCoPrime(8, 15));
// Pair is co-prime

console.log(areCoPrime(7, 11));
// Pair is co-prime

console.log(areCoPrime(5, 10));
// Pair is not co-prime (this one was wrong before)

console.log(areCoPrime(7, 7));
// Pair is not co-prime (this one was wrong before)

Javascript:Check numbers are co prime using gcd


function gcd(a, b) {
  a = Math.abs(a);
  b = Math.abs(b);
  while (b !== 0) {
    [a, b] = [b, a % b];
  }
  return a;
}

function areCoPrime(num1, num2) {
  if (!Number.isInteger(num1) || !Number.isInteger(num2)) {
    throw new TypeError("Both arguments must be integers");
  }
  return gcd(num1, num2) === 1;
}

console.log(areCoPrime(6, 9));   // false (gcd = 3)
console.log(areCoPrime(8, 15));  // true  (gcd = 1)
console.log(areCoPrime(7, 11));  // true  (gcd = 1)
console.log(areCoPrime(5, 10));  // false (gcd = 5, the case your old code got wrong)
console.log(areCoPrime(7, 7));   // false (gcd = 7)