c語言最小公倍數(shù)的求法如下:
成都創(chuàng)新互聯(lián)主要為客戶提供服務(wù)項目涵蓋了網(wǎng)頁視覺設(shè)計、VI標志設(shè)計、營銷型網(wǎng)站建設(shè)、網(wǎng)站程序開發(fā)、HTML5響應(yīng)式重慶網(wǎng)站建設(shè)公司、移動網(wǎng)站建設(shè)、微商城、網(wǎng)站托管及成都網(wǎng)站維護公司、WEB系統(tǒng)開發(fā)、域名注冊、國內(nèi)外服務(wù)器租用、視頻、平面設(shè)計、SEO優(yōu)化排名。設(shè)計、前端、后端三個建站步驟的完善服務(wù)體系。一人跟蹤測試的建站服務(wù)標準。已經(jīng)為成都陽光房行業(yè)客戶提供了網(wǎng)站制作服務(wù)。
兩個或多個整數(shù)公有的倍數(shù)叫做它們的公倍數(shù),其中除0以外最小的一個公倍數(shù)就叫做這幾個整數(shù)的最小公倍數(shù)。整數(shù)a,b的最小公倍數(shù)記為[a,b],同樣的,a,b,c的最小公倍數(shù)記為[a,b,c],多個整數(shù)的最小公倍數(shù)也有同樣的記號。
與最小公倍數(shù)相對應(yīng)的概念是最大公約數(shù),a,b的最大公約數(shù)記為(a,b)。關(guān)于最小公倍數(shù)與最大公約數(shù),我們有這樣的定理:(a,b)x[a,b]=ab(a,b均為整數(shù))。
方法一:窮舉法
假設(shè)有兩個整數(shù)num1和num2,這兩個整數(shù)的最小公倍數(shù)一定大于等于它們的最大值,同時小于等于它們的積。按從小到大的順序遍歷整個范圍內(nèi)的所有整數(shù),第一個公因數(shù)即為它們的最小公倍數(shù)?!静豢紤]負數(shù),求負數(shù)的最小公倍數(shù)本就是無意義的(相當(dāng)于求兩個正數(shù)的最大公倍數(shù))】
方法二:定理法
使用定理求最小公倍數(shù)(兩個整數(shù)的最小公倍數(shù)等于兩數(shù)之積除以兩個數(shù)的最大公因數(shù)),需要先求出兩個整數(shù)的最大公因數(shù),最大公因數(shù)這里采用輾轉(zhuǎn)相除法。(最大公因數(shù)的求法可以參考我上一篇文章——第68天:求最大公約數(shù)(使用三種方法))【不考慮負數(shù),求負數(shù)的最小公倍數(shù)本就是無意義的(相當(dāng)于求兩個正數(shù)的最大公倍數(shù))】
按照數(shù)學(xué)定義求。
最簡單的 從較大數(shù)開始,一直累加出一個兩個的共同倍數(shù)。
也可以先求最大公約數(shù) 然后用兩個數(shù)的積除以最大公約數(shù)
int?func(int?a,?int?b)
{
int?r;
for(?r=a;?;?r++)
if(r%a==0??r%b==0)?break;
return?r;
}
如圖使用輾轉(zhuǎn)相除法求最小公倍數(shù):
方法步驟:
一、打開VC2010(或其他C語言編譯器),新建項目-選擇Win32為控制臺應(yīng)用程序-命名-確定
二、選擇源文件-添加-新建項
三、選擇C++文件-命名.c-添加
四、輸入如下程序
#include stdio.h
int main()
{
int a,b,A,B;
int lol,lpl;
printf ("輸入兩個整數(shù):\n");
scanf ("%d%d",a,b);
A=a;
B=b;
if(B)
while((A %= B) (B %= A));
lol = A+B;
lpl = a*b/lol;
printf ("最小公倍數(shù)為:%d\n", lpl);
return 0;
}
五、按鍵Ctrl+F5開始執(zhí)行(不調(diào)試),輸入兩個整數(shù)之間用空格隔開,回車即可得到兩個整數(shù)的最小公倍數(shù)
擴展資料:
輾轉(zhuǎn)相除法, 又名歐幾里德算法(Euclidean algorithm),是求最大公約數(shù)的一種方法。
它的具體做法是:用較大數(shù)除以較小數(shù),再用出現(xiàn)的余數(shù)(第一余數(shù))去除除數(shù),再用出現(xiàn)的余數(shù)(第二余數(shù))去除第一余數(shù),如此反復(fù),直到最后余數(shù)是0為止。如果是求兩個數(shù)的最大公約數(shù),那么最后的除數(shù)就是這兩個數(shù)的最大公約數(shù)。
兩個數(shù)的最大公約數(shù)是指能同時整除它們的最大正整數(shù)。
設(shè)兩數(shù)為a、b(a2b),求a和b最大公約數(shù)(a,b)的步驟如下:
(1)用a除以b(a2b),得a÷b=q..n(0≤n)。
(2)若rn=0,則(a,b)=b;
(3)若r10,則再用b除以n,得b÷n=q..2(0sr2)
(4)若r2=0,則(a,b)=rn;若r20,則繼續(xù)用r1除以r2,.…,如此下去,直到能整除為止。
其最后一個余數(shù)為0的除數(shù)即為(a,b)的最大公約數(shù)。
【利用C語言求最小公倍數(shù)主要用到if
whie循環(huán)】
例子如下:
直接編譯,程序輸出結(jié)果中任意輸入兩個數(shù),如5和8,然后按回車,結(jié)果如下圖所示:
兩個或多個整數(shù)公有的倍數(shù)叫做它們的公倍數(shù),其中除0以外最小的一個公倍數(shù)就叫做這幾個整數(shù)的最小公倍數(shù)。