問答題
【簡答題】
計算兩個正整數(shù)n和m的乘積有一個很有名的算法稱為俄式乘法,其思想是利用了一個規(guī)模是n的解和一個規(guī)模是n/2的解之間的關(guān)系:n×m=n/2×2m(當(dāng)n是偶數(shù))或:n×m=(n-1)/2×2m+m(當(dāng)n是奇數(shù)),并以1×m=m作為算法結(jié)束的條件。例如,圖5.15給出了利用俄式乘法計算50×65的例子。據(jù)說十九世紀(jì)的俄國農(nóng)夫使用該算法并因此得名,這個算法也使得乘法的硬件實現(xiàn)速度非??欤驗橹皇褂靡莆痪涂梢酝瓿啥M制數(shù)的折半和加倍。請設(shè)計算法實現(xiàn)俄式乘法。
