Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

โปรแกรม C++ หาตัวหารร่วม (Common Divisors) ของสองจำนวน

ตัวหารร่วมของสองจำนวนคือจำนวนที่หารทั้งสองจำนวนลงตัว

ตัวอย่าง:

ตัวหารของ 12 คือ 1, 2, 3, 4, 6, 12

ตัวหารของ 18 คือ 1, 2, 3, 6, 9, 18

ดังนั้น ตัวหารร่วมของ 12 และ 18 คือ 1, 2, 3, 6

ตัวที่มากที่สุดเรียกว่า GCD (Greatest Common Divisor) ของ 12 และ 18 สัญลักษณ์คือ (a, b) ดังนั้น (12, 18) = 6

GCD สำคัญหลายอย่าง เช่น ใช้คำนวณ LCM (Least Common Multiple) คือจำนวนเต็มบวกน้อยที่สุดที่เป็นพหุคูณของทั้งสอง LCM ของ a และ b คำนวณได้จาก ab/(a, b)

ตัวอย่าง LCM ของ 12 และ 18 คือ 12*18/6 = 36

Input: a = 10, b = 20
Output: 1 2 5 10 // ตัวหารร่วมทั้งหมดคือ 1 2 5 10

คำอธิบาย

จำนวนเต็มที่หารทั้งสองจำนวนลงตัว (ไม่มีเศษ)

ตัวอย่างโค้ด

#include <iostream>
using namespace std;

int main() {
    int n1, n2, i;
    n1 = 10;
    n2 = 20;
    for (i = 1; i <= n1 && i <= n2; ++i) {
        if (n1 % i == 0 && n2 % i == 0) {
            cout << i << "\t";
        }
    }
}