1.3 案例算法
案例1 輾轉相除法與更相減損術
1、在對16和12求最大公約數(shù)時,整個操作如下:(16,12)→(4,12)→(4,8)→(4,4),由此可以看出12和16的最大公約數(shù)是( )
A、 4 B、 12 C、 16 D、 8
2、下列各組關于最大公約數(shù)的說法中不正確的是( )
A、16和12的最大公約數(shù)是4 B、78和36的最大公約數(shù)是6
C、85和357的最大公約數(shù)是34 D、105和315的最大公約數(shù)是105
3、我國古代數(shù)學家求兩個正整數(shù)最大公約數(shù)的算法,被稱為 ,又稱為
4、運算速度快是計算機一個很重要的特點,而算法好壞的一個重要標志是
5、算法
S1 輸入,x,y
S2 。恚剑恚幔鴞x,y}
S3 n=min{x,y}
S4 若m/n=[m/n]([x]表示x的整數(shù)部分)
則輸出n,否則執(zhí)行S5
S5 r=m-[m/n]*n
S6 。恚剑
S7 。睿剑
S8 執(zhí)行S4
S9 輸出n
上述算法的含義是 。
6、試寫出一個算法,并畫出流程圖,使得能夠輸入n個正整數(shù)值,即可求出它們的最大公約數(shù)。
7、用當型和直到型語句,寫出求兩正整數(shù)的最大公約數(shù)的算法程序。
8、求兩個整數(shù)x(x≥0)和y(y>0)的整數(shù)商和余數(shù)(規(guī)定只能用加法和減法運算)。
9、試用更相減損術求80和36的最大公約數(shù)。
參考答案
1.A
2.C
3、更相減損之術 等值算法
4、運算次數(shù)
5、求x,y的最大公約數(shù)
6、略解:
Read n ,a
For i=2 to n
Read b
If aDo
r=mod(a,b)
a=b:b=r
Loop Until r=0
If a=1 then prind a
Goto End
Next i
Print a
End
7、
INPUT 。,n
(當型) 。颍剑恚畹挠鄶(shù)
WHILE。颉伲
m=n
n=r
r=m/n的余數(shù)
WEND
PRINT 。
END
(直到型)
INPUT 。,n
DO 。颍剑恚畹挠鄶(shù)
m=n
n=r
LOOP UNTIL 。颍剑
PRINT m
END
8、
解:算法:
S1 使q=0,r=2
S2 當r≥y時,重復下面操作
S3 。颍剑颍
S4 q=q+1
S5 輸出x
程序框圖
INPUT q=0
r=x
y=y
DO 。颍剑颍
q=q+1
LOOP 。眨危裕桑獭 。颉荩
RIINT。
END
9、
解:80-36=44,
44-36=8,
36-8=28,
28-8=20,
20-8=12,
12-8=4,
8-4=4。
因此80和36的最大公約數(shù)是4。
本文來自:逍遙右腦記憶 http://portlandfoamroofing.com/gaoer/56791.html
相關閱讀:算法的三種基本邏輯結構和框圖表示