天天看點

輾轉相除法求最大公約數和最小公倍數

int yue(int num1,int num2)
{
    if(num1 < num2)//交換
    {
        num1 ^= num2;
        num2 ^= num1;
        num1 ^= num2;
    }
    while(num1 % num2 != 0)
    {
        int temp = num1;
        num1 = num2;
        num2 = temp % num2;
    }
    return num2;
}

int bei(int num1,int num2)
{
    return num1 * num2 / yue(num1,num2);
}

int main()
{
    int num1,num2;
    printf("輸入兩個整數:\n");
    scanf("%d %d",&num1,&num2);

    printf("兩個數的最大公約數為:%d\n",yue(num1,num2));
    printf("兩個數的最小公倍數:%d\n",bei(num1,num2));

    
    return 0;
}