2009年6月3日 星期三

Excel中求幾個正整數的最小公倍數(LCM)或最大公約數(GCD)

例:求A1、B1、C1三個數的最大公約數和最小公倍數。


一、定義:
  • 最大公約數:幾個數公有的約數叫做這幾個數的公約數,其中最大的一個叫做這幾個數的最大公約數。
  • 最小公倍數:幾個數公有的倍數叫做這幾個數的公倍數,其中最小的一個叫做這幾個數的最小公倍數。
那什麼又是約數和倍數呢?
  • 能夠整除一個整數的整數稱為其的約數(如5是10的約數)。
  • 能夠被一個整數整除的整數稱為其的倍數(如10是5的倍數)。

二、利用Excel標準函式的方法:

網路上「青簡天空」的求最大公約數的公式(輸完下面的公式後,按Ctrl+Shift+Enter):

=MAX((MOD(A1,ROW(INDIRECT("1:"&MIN(A1:C1))))=0)*(MOD(B1,ROW(INDIRECT("1:"&MIN(A1:C1))))=0)*MOD(C1,ROW(INDIRECT("1:"&MIN(A1:C1))))=0)*ROW(INDIRECT("1:"&SMALL(A1:C1,1))))

找出能同時被1到這三個數中最小的數整除的所有整數,其中最大的就是最大公約數。
雖然看起來很麻煩,但是它是Excel數組公式應用的一個很好範例。


三、利用Excel增益集工具的方法:

先至選單「工具」→「增益集」,選擇加裝「分析工具箱」。沒安裝過可能會需要放入Office安裝光碟。

接下來直接使用函數「LCM」求最小公倍數、使用「GCD」求最大公約數:
  • 最小公倍數:=LCM(A1:C1)
  • 最大公約數: =GCD(A1:C1)
參考資料:對岸網友「風之月景」的「博客」

沒有留言:

張貼留言