Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Kiểm tra hai số nguyên tố cùng nhau (co-prime) bằng JavaScript

Hai số được gọi là nguyên tố cùng nhau (co-prime) nếu chúng không có ước số chung nào lớn hơn 1 (tức là ước chung lớn nhất là 1). Lưu ý: 1 không phải là số nguyên tố.

Ví dụ:

  • 4 và 5: nguyên tố cùng nhau
  • 9 và 14: nguyên tố cùng nhau
  • 18 và 35: nguyên tố cùng nhau
  • 21 và 57: không nguyên tố cùng nhau (có ước chung 3)

Hàm kiểm tra

const areCoprimes = (num1, num2) => {
    const smaller = num1 > num2 ? num1 : num2; // Lấy số lớn hơn (se có thể tối ưu lấy min)
    for (let ind = 2; ind < smaller; ind++) {
        const condition1 = num1 % ind === 0;
        const condition2 = num2 % ind === 0;
        if (condition1 && condition2) {
            return false; // Tìm thấy ước chung
        }
    }
    return true; // Không có ước chung nào
};

// Test
console.log(areCoprimes(4, 5));   // true
console.log(areCoprimes(9, 14));  // true
console.log(areCoprimes(18, 35)); // true
console.log(areCoprimes(21, 57)); // false

Kết quả

true
true
true
false

Lưu ý về hiệu năng: Vòng lặp chạy đến smaller (số lớn hơn hai số). Có thể tối ưu bằng cách chỉ lặp đến Math.sqrt(Math.min(num1, num2)) hoặc dùng thuật toán Euclid tìm UCLN (nhanh hơn).