您好,登錄后才能下訂單哦!
這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)碛嘘P(guān)c語言求出最大公約數(shù)和最小公倍數(shù)的方法,以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
求最大公約數(shù)算法:
有兩整數(shù)a和b:
① a%b得余數(shù)c
② 若c=0,則b即為兩數(shù)的最大公約數(shù)
③ 若c≠0,則a=b,b=c,再回去執(zhí)行①
例如求27和15的最大公約數(shù)過程為:
27÷15 余1215÷12余312÷3余0因此,3即為最大公約數(shù)
#include<stdio.h> int main() /* 輾轉(zhuǎn)相除法求最大公約數(shù) */ { int m, n, a, b, t, c; printf("Input two integer numbers:\n"); scanf("%d%d", &a, &b); m=a; n=b; while(b!=0) /* 余數(shù)不為0,繼續(xù)相除,直到余數(shù)為0 */ { c=a%b; a=b; b=c;} printf("The largest common divisor:%d\n", a); printf("The least common multiple:%d\n", m*n/a); }
求最小公倍數(shù):
#include <stdio.h> int main() { int a,b,A,B; int lol,lpl; printf ("輸入兩個(gè)整數(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; }
上述就是小編為大家分享的c語言求出最大公約數(shù)和最小公倍數(shù)的方法了,如果您也有類似的疑惑,不妨參照上述方法進(jìn)行嘗試。如果想了解更多相關(guān)內(nèi)容,請關(guān)注億速云行業(yè)資訊。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。