利用輾轉(zhuǎn)相除法求最大公約數(shù).
輾轉(zhuǎn)相除法,又名歐幾里德算法,是求兩個(gè)正整數(shù)最大公約數(shù)的算法,它的出現(xiàn)可追溯至3000年前.輾轉(zhuǎn)相除法并不需要把數(shù)作質(zhì)因子分解.用輾轉(zhuǎn)相除法求正整數(shù)a、b的最大公約數(shù)運(yùn)算過(guò)程為:
第一步:用被除數(shù)a除以除數(shù)b,得到余數(shù)c;
第二步:如果余數(shù)c不為0,則用上一步的除數(shù)b替換被除數(shù)a,用上一步的余數(shù)c替換除數(shù)b,再次執(zhí)行第一步;如果余數(shù)為0則執(zhí)行下一步;
第三步:則此時(shí)的除數(shù)即是a、b最大公約數(shù).
例如a=60,b=25,運(yùn)算過(guò)程為:
①60÷25=2…10;②25÷10=2…5; ③10÷5=2…0. 第③步時(shí),余數(shù)為0,運(yùn)算結(jié)束,則此步的除數(shù)5即是60和25的最大公約數(shù).
Visual Basic代碼實(shí)現(xiàn):
Private Sub Command1_Click ( )
Dim a As Integer,b As Integer
Dim ①c As Integerc As Integer
a=Val(Text1.Text)
b=Val(Text2.Text)
c=a Mod b
Do While ②c!=0c!=0
a=b
b=c
c=a Mod b
Loop
Text3.Text=Str(b)
End Sub
其中①、②空白處應(yīng)填的代碼分別是:
②c As Integerc As Integer;
②c!=0c!=0.
【答案】c As Integer;c!=0;c As Integer;c!=0
【解答】
【點(diǎn)評(píng)】
聲明:本試題解析著作權(quán)屬菁優(yōu)網(wǎng)所有,未經(jīng)書(shū)面同意,不得復(fù)制發(fā)布。
發(fā)布:2024/4/20 14:35:0組卷:9引用:1難度:0.1
相似題
-
1.某算法的部分流程圖如圖所示,執(zhí)行這部分流程后,變量a,b的值分別是( ?。?br />
發(fā)布:2025/1/2 11:0:1組卷:18引用:15難度:0.9 -
2.在某銀行取款機(jī)上,用戶銀行卡密碼驗(yàn)證的過(guò)程如圖所示:當(dāng)用戶輸入密碼時(shí),若第1次輸入錯(cuò)誤,第2次輸入才正確,則整個(gè)操作過(guò)程的執(zhí)行流程是( ?。?/h2>
發(fā)布:2025/1/2 11:30:1組卷:7引用:7難度:0.7 -
3.關(guān)于如圖流程圖的描述中,正確的是( ?。?br />
發(fā)布:2025/1/2 11:30:1組卷:6引用:3難度:0.9