看板 Office 關於我們 聯絡資訊
看來很好玩,發現真的要在一個公式還真的很麻煩說,頭都昏了說, 已經不知道自己在看什麼了 @_@ {.4,.4,.2,.0} A1 =IF(INDEX(MMULT(--({0.4,0.4,0.2,0}>TRANSPOSE({0.4,0.4,0.2,0})),{1;1;1;1})*1000 +ROW(1:4),COLUMNS($A$1:A1))<=SMALL(MMULT(--({0.4,0.4,0.2,0}> TRANSPOSE({0.4,0.4,0.2,0})),{1;1;1;1})*1000+ROW(1:4),SUM({0.4,0.4,0.2,0})) ,1,0) {0.8,0.8,0.3,0.1} A1 =IF(INDEX(MMULT(--({0.8,0.8,0.3,0.1}>TRANSPOSE({0.8,0.8,0.3,0.1})),{1;1;1;1}) *1000+ROW(1:4),COLUMNS($A$1:A1))<=SMALL(MMULT(--({0.8,0.8,0.3,0.1}> TRANSPOSE({0.8,0.8,0.3,0.1})),{1;1;1;1})*1000+ROW(1:4), SUM({0.8,0.8,0.3,0.1})),1,0) 以上都是陣列公式,輸入完記得按 Ctrl+Shift+Enter, 然後往右拉到 D1 即可 ※ 引述《JieJuen (David)》之銘言: : 現在板上出現了好玩的題目,化簡如下 : 4個小數 .4 .4 .2 .0 : 要化成(進位成) 1 0 0 0 : 小數的和就是最後要有幾個1 : .4+.4+.2+.0=1 即有1個數要進位 : 小數和一定是整數 : 1要由最大的數開始放 : 有重覆的就自己選一個來放 : 因為提問者想要一格算出, : 意即要使用陣列 {.4,.4,.2,.0} 來輸入 : 就是如果要用到.2 不能直接取第三格 要從{}中取出 如INDEX({},3) : 因為{}中的數也是其他步計算所得 : 簡單說,公式應該用{.4,.4,.2,.0}整體 : 然後參照其中一格.4時 可得1 : 此公式往其他格拖曳 可在另一格.4 得0 剩下也得0 : 呵 好像有一定的難度 : 再給一例測試 : .8 .8 .3 .1 : 1 1 0 0 : 看似4捨5入,但您知道的,這是第二個測試例。 : 我也還沒有答案, : 但看起來應該有吧, : 至少寫在多格會有答案? : 雖然原問題暫時解決, : 這是為未來著想, : 有興趣的解完之後再套用到 : │ 文章代碼(AID): #1Ag7k4e5 (Office) [ptt.cc] [算表] 小數點後的比較進位或捨 │ : │ 文章網址: http://www.ptt.cc/bbs/Office/M.1252555652.A.A05.html: ●10760 4 9/10 m9300913 □ [算表] 小數點後的比較進位或捨去 : 做為該文的改進版 呵呵。 : PS.我想至少可以小數TRUNC取兩位 再加.0001來排名 (如果有比較容易的話...) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 125.225.3.92
JieJuen:嘿 真的全到一格了! 超過原先標準XD 本來要算.4時是可引入 09/12 08:14
JieJuen:.4這一單格的 呵 依下篇文 *1000改用整數就更保險了 09/12 08:16