c++實驗7——項目2:最大公約和和最小公倍數

一、問題及代碼

問題:從鍵盤中輸入兩個整數,求這兩個整數的最大公約數和最小公倍數

代碼:

/*
* 文件名稱:pr1
* 作    者:謝翊民
* 完成日期:   2016   年 6月4日
* 版 本 號:v1.0
* 輸入描述:兩個整數
* 問題描述:從鍵盤中輸入兩個整數,求這兩個整數的最大公約數和最小公倍數。
* 程序輸出:最大公約數和最小公倍數
* 問題分析:輾轉相除法
* 算法設計:
*/
#include<iostream>
using namespace std;
int fun(int m,int n,int &gcd)
{
    int t,gbs,j;
    j=m*n;
    while(m%n!=0)
    {
        t=m;
        m=n;
        n=t%n;
    }
    gcd=n;
    gbs=j/gcd;
    return gbs;
}
int main()
{
    int a,b,k,gcd,gbs;
    cout<<"請輸入兩個整數:";
    cin>>a>>b;
    if(b>a)
    {
       k=a;
       a=b;
       b=k;
    }
    gbs=fun(a,b,gcd);
    cout<<"最大公約數爲:"<<gcd<<endl;
    cout<<"最小公倍數爲:"<<gbs<<endl;
    return 0;
}


二、運行結果



三、心得體會 

當自定義函數需要 返回多個變量時可以用引用的方法。

四、知識點

自定義函數的編寫,自定義函數的引用,輾轉相除法

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章