2014年1月15日 星期三

輾轉相除法求公因數 幹有夠簡單

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int num1 ;
    int num2 ;
    printf("請輸入第一個數 : ") ;
    scanf ("%d", &num1) ;
    printf("請輸入第二個數 : ") ;
    scanf ("%d", &num2) ;
    int gi ;
    gi = num1*num2 ;
 
    if ((num1 != 0) && (num2 != 0)) {
              while ( (num1 != 0) && (num2 != 0) ) {
                    if (num1 >num2) {
                             num1 = num1 % num2 ;
                    }
                    else { num2 = num2 %num1 ;
                    }
              }
              if (num1 >num2) {
                       printf ("最大公因數%d\n" , num1) ;
                       printf ("最小公倍數%d\n" , gi/num1) ;
                       }
              else {
                   printf("最大公因數%d\n" , num2) ;
                   printf ("最小公倍數%d\n" , gi/num2) ;
                   }
    }
 
 
 
    system("PAUSE");
    return 0;
}

沒有留言:

張貼留言