函數之數學運用篇
ET函數之數學應用篇
ET 2007的函數可以實現財務運算、日期與時間運算、數學統計、查找、文本運算、邏輯運算、工程運算等等功能。善用函數可以使工作事半功倍。本篇為大家介紹數學運用篇,通過12個實例展示ET函數的魅力。 本篇主要包括以下功能: 根據直角三角形之勾、股求其弦長 根據三邊長判斷三角形是否直角三角形 根據三邊求普通三角形面積 根據直角三角形三邊求三角形面積 根據三邊長求證三角形是直角三角形 根據等邊三角形周長計算面積 羅列1到1000之間的質數 判斷某數是否質數 計算某數有多少約數 羅列某數值的所有約數 計算兩個數值的最大公約數 兩個整數之間的所有整數的合計及乘積函數功能:根據直角三角形之勾、股求其弦長
案例背景:B1:B2是直角三角形的勾和股,現需計算其弦長
函數公式:=POWER(SUMSQ(B1,B2),1/2)
公式思路:利用SUMSQ孫將B1和B2計算平方和再開平方即得到直角三角形之弦長
圖一 根據直角三角形之勾、股求其弦長
提示:本例也可以採用以下公式完成:
=SUMSQ(B1,B2)^0.5
" target="_blank">
函數功能:根據三邊長判斷三角形是否直角三角形
案例背景:B2:B4是三角形的三邊長,現需判斷它是否直角三角形
函數公式:=IF(SUMSQ(MAX(B2:B4))=SUMSQ(LARGE(B2:B4,{2,3})),"","非")&"直角"
公式思路:利用MAX函數提取最大值,再計算其平方;然後利用LARGE函數提取三條邊中最長邊之外的兩條邊長並計算其平方和;如果兩次計算平方和相等則是直角三角形,否則非直角三角形
圖二 根據三邊長判斷三角形是否直角三角形
提示:本例也可以採用以下公式完成:
=CHOOSE((MAX(B1:B3)^2=SUMSQ(LARGE(B2:B4,{2,3})))+1,"非直角","直角")
" target="_blank">
函數功能:根據三邊求普通三角形面積
案例背景:B2:B4是三角形的三邊長,現需計算其面積
函數公式:=(PRODUCT(SUM(B2:B4)/2,SUM(B2:B4)/2-LARGE(B2:B4,{1,2,3})))^0.5
公式思路:三邊之和、三邊之和再分別減去三邊,將此四個數據相乘並開平方即是三角形的面積
圖三 根據三邊求普通三角形面積
提示:本例也可以採用以下公式完成:
=(PRODUCT(SUM(B2:B4)/2,SUM(B2:B4)/2-B2,SUM(B2:B4)/2-B3,SUM(B2:B4)/2-B4))^0.5
" target="_blank">
函數功能:根據直角三角形三邊求三角形面積
案例背景:B2:B4是直角三角形的三邊長,現需計算其面積
函數公式:=PRODUCT(LARGE(B1:B3,{2,3}))/2
公式思路:利用第二大邊和第三大邊相乘再除以2即為直三角形之面積
圖四 根據直角三角形三邊求三角形面積
提示:本例也可以採用以下公式完成:
=PRODUCT(IF(B1:B3
=PRODUCT(SMALL(B1:B3,{1,2}))/2
=PRODUCT(MIN(B1:B3),MEDIAN(B1:B3))/2
" target="_blank">
函數功能:根據三邊長求證三角形是直角三角形
案例背景:B1:B3是三角形的三邊長,現需判斷它是否直角三角形
函數公式:=IF(POWER(MAX(B1:B3),2)=SUM(POWER(LARGE(B1:B3,{2,3}),2)),"是","不是")公式思路:將最長邊計算平方,再計算其它兩條邊的平方和,如果兩者相等就是直角三角形,否則不是
圖五 根據三邊長求證三角形是直角三角形
提示:本例也可以採用以下公式完成:
=IF(MAX(B1:B3)^2=SUMSQ(LARGE(B1:B3,{2,3})),"是","不是")
" target="_blank">
函數功能:根據等邊三角形周長計算面積
案例背景:B1是等邊三角形的周長,現需計算其面積
函數公式:=SQRT(B1/2*POWER(B1/2-B1/3,3))公式思路:周長的二分之一與周長的二分之一減去邊長的三分之一,再三次方。然後與周長的二分之一本乘,最後開三次方即為等邊三角形面積,本例公式是例3的簡化
圖六 根據等邊三角形周長計算面積
提示:本例也可以採用以下公式完成:
=(B1/2*(B1/2-B1/3)^3)^0.5
" target="_blank">
函數功能:羅列1到1000之間的質數
案例背景:所謂質數,即為除了1和自身以外,不能被任意整數整除的自然數。現需要在單元格中列出1到1000之間的質數
函數公式: =IF(SMALL(IF(MOD(ROW(),ROW(IV$1:IV2))=0,ROW(IV$1:IV2)),2)=ROW(),ROW(),"")——數組公式,在A2輸入並下拉,將產生質數,中間有空行 =INDEX(A:A,SMALL(IF(A$2:A$1000<>"",ROW(A$2:A$1000),1001),ROW(A1)) ———數組公式,在B2輸入並下拉,將A列的空行剔除掉公式思路:第一個公式利用ROW函數產生每一行的行號,然後將行號與1到行號組成的數組進行餘數計算。如果當前行號是質數的話,那麼當前行號做為被除數時,只有兩個數做為除數結果才是0:一個是1,另一個質數本身。根據這個特點,判斷餘數為0時的第二個最小值是否等於當前行號即可,如果相等則是質數,否則是合數。當前行是合數時,返回空文本。第二公式主要用於引用A列的非空單元格,剔除空行
圖七 羅列1到1000之間的質數
提示:如果用EXCEL產生1到10000之間的餘數,只需要一個公式即可完成(ET不支持):
=SMALL(IF(MMULT(N(MOD(ROW($2:$999),COLUMN(B:ALK))=0),ROW($1:$998)^0)=1,ROW($2:$999),1000),ROW(A1))
" target="_blank">
函數功能:判斷某數是否質數
案例背景:判斷A2單元格的數值是數還是合數,其至非質非合
函數公式:=IF(A2<2,"非質非合",IF(SMALL(IF(MOD(A2,ROW(INDIRECT("1:"&A2)))=0,ROW(INDIRECT("1:"&A2))),2)=A2,"質數","合數"))公式思路:首先判斷A2是否小於2,如果小於則返加「非質非合」。再利用ROW函數配合INDIRECT函數產生一個從1開始,A2的值結束的自然數序列數組,並用A2的值與該數組相除,計算餘數。最後再通過IF函數將餘數為0的數據提取出來,如果第二個最小值等於A2的值,那麼它就是質數,否則是合數
圖八 判斷某數是否質數
提示:本公式因採用行號做為計算依據,那麼可以判斷的最大值受ET的最大行數限制,到不過在1到65536這個範圍之外。另外,可以使用以下公式計算更大的範圍(不過ET不支持,可以在EXCEL中順利運行):
=IF(AND($A$2>4,A2=INT($A$2)),IF(OR(INT($A$2/ROW(INDIRECT("2:"&INT(SQRT($A$2)))))*ROW(INDIRECT("2:"&INT(SQRT($A$2))))=$A$2),"非質數","質數"),IF(A2=1,"非質非合",IF(OR($A$2={2,3}),"質數","非質數")))
" target="_blank">
函數功能:計算某數有多少約數
案例背景:約數就是能整除目標數據(整數)的正整數。本例中A1的一個正整數,計算其它有多少個約數
函數公式:=COUNT(0/(MOD(A2,ROW(INDIRECT("1:"&A2)))=0))
公式思路:公式利用ROW配合INDIRECT函數產生1到A2的值的數組,再用單元格A2的值分別除以這個數組中每一個值,如果餘數為0則該值是A2的約數。餘數為0的個數即是A2的約數個數
圖九 計算某數有多少約數
提示:本例也可以採用以下公式完成:
=SUM(--(MOD(A2,ROW(INDIRECT("1:"&A2)))=0))
" target="_blank">
函數功能:羅列某數值的所有約數
案例背景:羅列出A2的數值的所有約數,從小到大排列
函數公式:=SMALL(IF(MOD(A$2,ROW(INDIRECT("A1:A"&A$2)))=0,ROW(INDIRECT("A1:A"&A$2))),ROW(A1))公式思路:利前前一列同樣的方法判斷A2的值除以每個行號餘數是否為0,然後利用SMALL函數將餘數為0的行號逐一提取出來
圖十 羅列某數值的所有約數
提示:本例公式沒有使用排錯,公式拖到超過約數個數的單元格時將產生錯誤值。可以配合ISERROR函數來處理這個問題" target="_blank">
函數功能:計算兩個數值的最大公約數
案例背景:A2和B2是兩個正整數,現需計算兩個數據的最大公約數。EXCEL中有一個專函數GCD有於計算最大公約數,而ET不存在這個函數,但卻可以利用已有的函數組合來完成
函數公式:=MAX(IF(MOD(MAX($A$2:$B$2),ROW(INDIRECT("A1:A"&MIN($A$2:$B$2))))=0,IF(MOD(MIN($A$2:$B$2),ROW(INDIRECT("A1:A"&MIN($A$2:$B$2))))=0,ROW(INDIRECT("A1:A"&MIN($A$2:$B$2))))))公式思路:首先計算出A2:B2區域中最小值的所有約數,再計算最大值的所有約數,取兩者相等的最大值
圖十一 計算兩個數值的公最大約數
提示:在EXCEL中用以下公式即可:
=GCD(A2:B2)
" target="_blank">
函數功能:兩個整數之間的所有整數的合計及乘積
案例背景:A2和B2是兩個正整數,現需計算兩個數值之間的所有整數的合計以及乘積
函數公式: =SUM(ROW(INDIRECT("IV"&A2&":IV"&B2)))——數組公式,用於計算合計 =PRODUCT(ROW(INDIRECT("IV"&A2&":IV"&B2)))——數組公式,用於計算乘積公式思路:利用INDIRECT函數將兩個數字轉換成區域引用,再用ROW函數產生序列值,最後用SUM匯總,用PRODUCT求乘積
圖十二 兩個整數之間的所有整數的合計及乘積
提示:本例公式受限於ET的行數,即不能在1到65536這個範圍之外。" target="_blank">
----------作者:羅剛君
推薦閱讀:
※關於歐拉函數及其一些性質的美妙證明(1)
※【Concrete Mathematics】(Special Number抄書筆記)Stirling Numbers(1)
※【不等式】均值不等式及其應用
※數學皇冠上的明珠
※分析和代數原理(4)