模組討論:Number
本模块依照页面评级標準无需评级。 本模块属于下列维基专题范畴: |
|||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
請問{{#invoke:Number|numberDivisorInformation|1=28|use math=yes}}是什麼東西?模板嗎?
@A2569875:君最近在許多數字條目中增加了類似{{#invoke:Number|numberDivisorInformation|1=28|use math=yes}}的東西,請問這是模板嗎?若是,為什麼在下搜尋不到它?而且也找不到說明這個東西如何使用的文檔。
另外,看來使用這個東西會自動產生該數字的很多數學性質(效果如下),可是日後若有人要增加、刪除、改寫這些數學性質,就要更動到這個東西的內容,這樣會不會反而不便?
謝謝回答。-游蛇脫殼/克勞棣 2018年11月1日 (四) 06:10 (UTC)
模組籌備階段
- 合数,正因數有1、2、4、7、14和28。
- 質因數分解, 。
- 完全数。
- 半完全数。
- 歐爾調和數,因數调和平均数為3。
- 不尋常數,大於平方根的質因數為7。
- 十进制的奢侈數。
- @克勞棣:這些是不會變動的性質,因此不可能會有需要修改的情況,比如7是28的因數,不太可能明天7就變成不是28的因數了;或28是完全數,不太可能明天就突變成奇異數,對於「日後改寫這些數學性質會造成不便」表達兆分強烈(?)異議,由於於許多性質有永不改變的特性,因此,可由程式自動計算,避免筆誤。其他性質請手動加入,因為有些性質判斷的計算複雜度過高,而簡單的性質可以直接計算的才會列出。模板在這,Module:Number,說明文檔還沒寫,近期會補上。-- 宇帆(留言·歡迎簽到,緲子偶素化錸合鎵錸鎢(ReMu·GaReW)) 2018年11月1日 (四) 06:18 (UTC)
- @A2569875:君:抱歉!我可能說得太簡略:我的意思是,這些性質是不會改變的沒錯,但「如何描述」這些性質卻仍有更改的空間,例如完全數後面是否應加上「對應的梅森質數為.......」或梅森質數後面是否應加上「對應的完全數為.......」,所以,語句還是可能變動的。-游蛇脫殼/克勞棣 2018年11月2日 (五) 03:48 (UTC)
- @克勞棣:關於不便的部分,不會,這只會列出能直接算出的性質,有些則不能算,像本原半完全數就不能算,因為要檢查前面所有數字,會算太慢,實際數也不能算,因為除了要檢查小於他所有數字之外還有檢查因數組合之和是否為該數,而因數組合數量為2的因數數量次方,假設一個數字有50個因數,則最遭情況需要計算250次,因此此類性質則不建議加入自動計算的清單中,像這類性質則須手動加入於後方,可參考100。-- 宇帆(留言·歡迎簽到,緲子偶素化錸合鎵錸鎢(ReMu·GaReW)) 2018年11月1日 (四) 06:22 (UTC)
- @克勞棣:這些是不會變動的性質,因此不可能會有需要修改的情況,比如7是28的因數,不太可能明天7就變成不是28的因數了;或28是完全數,不太可能明天就突變成奇異數,對於「日後改寫這些數學性質會造成不便」表達兆分強烈(?)異議,由於於許多性質有永不改變的特性,因此,可由程式自動計算,避免筆誤。其他性質請手動加入,因為有些性質判斷的計算複雜度過高,而簡單的性質可以直接計算的才會列出。模板在這,Module:Number,說明文檔還沒寫,近期會補上。-- 宇帆(留言·歡迎簽到,緲子偶素化錸合鎵錸鎢(ReMu·GaReW)) 2018年11月1日 (四) 06:18 (UTC)
- 請回應謝謝,這樣才能決定下一部,目前計畫Infobox Number參數自動化。-- 宇帆(留言·歡迎簽到,緲子偶素化錸合鎵錸鎢(ReMu·GaReW)) 2018年11月1日 (四) 06:52 (UTC)
- (~)補充:最近觀察到許多數據竄改型破壞,所以才決定編寫此模板。-- 宇帆(留言·歡迎簽到,緲子偶素化錸合鎵錸鎢(ReMu·GaReW)) 2018年11月1日 (四) 06:54 (UTC)
- 可是我認為「因數有1、2、4、5、10、20、25、50和100。」不必寫出來(遇到像96這種正因數很多者,就會是長長一串了),況且100的因數明顯不只1、2、4、5、10、20、25、50和100,別忘了它還有負因數-1、-2、-4、-5......等等,換句話說,「因數有1、2、4、5、10、20、25、50和100。」是錯的,應該是「正因數有1、2、4、5、10、20、25、50和100。」才對。
- 另外,質因數分解也是多餘的,因為右方的{{整数}}模板已有質因數分解這個欄位了。
- 這些難道都不能更改嗎?這樣也太專制了,全部照您的格式來寫是專制的,全部照我的格式來寫也是專制的。-游蛇脫殼/克勞棣 2018年11月1日 (四) 07:14 (UTC)
- @克勞棣:可以改啊,怎麼會不行?-- 宇帆(留言·歡迎簽到,緲子偶素化錸合鎵錸鎢(ReMu·GaReW)) 2018年11月1日 (四) 07:29 (UTC)
- @克勞棣:加參數即可,請告知哪些地方需要參數或修改,以便設計自定義輸出模式。請告知需求,以便修改。-- 宇帆(留言·歡迎簽到,緲子偶素化錸合鎵錸鎢(ReMu·GaReW)) 2018年11月1日 (四) 07:30 (UTC)
- @克勞棣:質因數分解並非多餘,請參考500#501至599的數字。-- 宇帆(留言·歡迎簽到,緲子偶素化錸合鎵錸鎢(ReMu·GaReW)) 2018年11月1日 (四) 07:31 (UTC)
- (:)回應:@克勞棣:這樣的形式可以接受嗎?可以高度客製化。
- 是一個合成數,為第18個合数,其包括了6個正因數,為1、2、4、7、14和28,且其和除了自己外正好等於自身。
- 質因數分解, 。
- 完全数,因為其不包括自己本身之因數和為自己本身。。
- 半完全数。
- 歐爾調和數,因數调和平均数為3。
- 不尋常數,大於平方根的質因數為7。
- 十进制的奢侈數。-- 宇帆(留言·歡迎簽到,緲子偶素化錸合鎵錸鎢(ReMu·GaReW)) 2018年11月1日 (四) 07:49 (UTC)
- 或
- 28可以表示為多個整數相乘,因此為合数,其中它可以被一些正整數整除,他們分別是1、2、4、7、14和28,這些數稱為28的因數。
- 其中,他可以分解為若干個質數相乘,稱為質因數分解, ,根據算術基本定理,這個結果是唯一的。。
- 28是第2個完全数,因為28的因數中,除了28外,其餘和為28。。
- 半完全数。
- 歐爾調和數,因數调和平均数為3。
- 不尋常數,大於平方根的質因數為7。
- 十进制的奢侈數。-- 宇帆(留言·歡迎簽到,緲子偶素化錸合鎵錸鎢(ReMu·GaReW)) 2018年11月1日 (四) 07:54 (UTC)
- 我的意思是,右方的{{整数}}模板已有質因數分解這個欄位了,所以內文再出現一次質因數分解,便顯得多餘了。-游蛇脫殼/克勞棣 2018年11月1日 (四) 08:30 (UTC)
模組第一批改善版本
- (:)回應:@克勞棣:我連夜趕出了一個高度客製化的版本,不曉得這樣有沒有解除您認為專制的疑慮?-- 宇帆(留言·歡迎簽到,緲子偶素化錸合鎵錸鎢(ReMu·GaReW)) 2018年11月3日 (六) 13:37 (UTC)
項目 | 您所看到的 | 您所輸入的 |
---|---|---|
可改順序 |
{{#invoke:Number|singleNumberInformation|1=28|use math=yes |print list = 歐爾調和數,完全數,質因數分解 }} | |
可改陳述 |
{{#invoke:Number|singleNumberInformation|1=28|use math=yes |print list = 完全數,質因數分解 |完全數 = *因為{{{number}}}有一個質因數{{{value}}}是[[梅森素數]],因此是{{{orderstr}}}{{{property}}}。 }} | |
陳述順序 |
{{#invoke:Number|singleNumberInformation|1=28|use math=yes | print list = 完全數,質因數分解,合數 | 完全數 = *'''這是示例,勿當真!'''<s>因為{{{number}}}有一個質因數{{{value}}}是[[梅森素數]],因此是{{{orderstr}}}{{{property}}}。</s> | 合數 = **因為有{{{value}}}等數字可以整除{{{number}}},因此是{{{orderstr}}}{{{property}}}。 }} | |
原本樣子 |
{{#invoke:Number|singleNumberInformation|1=28|use math=yes}} | |
最簡示例 |
{{#invoke:Number|singleNumberInformation|1=28|use math=yes | 合數 = *{{{number}}}是{{{orderstr}}}{{{property}}}。 | 質因數分解 = *{{{number}}}<math>=</math>{{{value}}}。 | 完全數 = *{{{number}}}是{{{property}}}。 | 半完全數 = *{{{number}}}是{{{property}}}。 | 歐爾調和數 = *{{{number}}}是{{{property}}}。 | 不尋常數 = *{{{number}}}是{{{property}}}。 | 奢侈數 = *{{{number}}}是{{{property}}}。 }} |
- 以上-- 宇帆(留言·歡迎簽到,緲子偶素化錸合鎵錸鎢(ReMu·GaReW)) 2018年11月3日 (六) 13:38 (UTC)
- 在下當初說「....專制......」那一句時,非常地詞不達意,可能傷害了您,沒想到您還能不計前嫌,連夜修改程式,我替所有的維基人感謝您。不過我還是要斗膽提出建議與意見:
- {{{orderstr}}}這種三個大括號的東西是什麼呢?實務操作上,這個模組對不會程式設計的維基人真的好用、容易操作嗎?如果艱澀難懂,我寧可手動輸入而不用模組,但誠如閣下所言,如此做很累又容易出錯。所以懇求您,盡量把模組寫得親民。
- 關於完全數:「因為28有一個質因數7是梅森素數,因此是第2個完全數。」明顯是錯的,28並不只是因為「有一個質因數7是梅森素數」才成為完全數的,否則我也可以說「因為56有一個質因數7是梅森素數,因此是第x個完全數。」
- 所以在下還是推薦原本樣子,但是完全數的敘述要寫成「第2個完全數,對應的梅森素数為7, 。前一個為6、下一個為496。」
- 您的模組允許添加腳注和來源嗎?例如寫成「第2個完全數,對應的梅森素数為7[1],.......」。
- 以上,請指教。感謝您!-游蛇脫殼/克勞棣 2018年11月3日 (六) 18:01 (UTC)
項目 | 您所看到的 | 您所輸入的 |
---|---|---|
這是示例! |
{{#invoke:Number|singleNumberInformation|1=28|use math=yes |print list = 完全數,質因數分解 |完全數 = *{{{number}}}是{{{orderstr}}}{{{property}}}對應[[梅森素數]]{{{value}}}。 }} | |
這是示例! |
参考資料
|
{{#invoke:Number|singleNumberInformation|1=28|use math=yes |print list = 完全數,質因數分解 |完全數 = *這只是一個示例,請不要對此刁鑽,這邊就只是為了示範{{{number}}}是{{{orderstr}}}{{{property}}}對應[[梅森素數]]{{{value}}}<ref group="t">{{cite book|author=李佳芬|title=《有趣的數論:梅森先生您在研究什麼?》|date=2017-09-07|publisher=九章出版社|location=彰化縣|isbn=1415926535897}}</ref>,整句的結構和順序可以換換而已!!! }} ===參考資料=== {{Reflist-talk|group="t"}} |
- (:)回應:@克勞棣:首先,上面那個是格式示例,並沒有說完全數要怎樣的,我純粹要示範模板的功能而已。-- 宇帆(留言·歡迎簽到,緲子偶素化錸合鎵錸鎢(ReMu·GaReW)) 2018年11月3日 (六) 18:21 (UTC)
- 要示例我當然甚至可以(你可以看原始碼,就知道我無須背誦那些數值,會自行生成,也不用擔心筆誤)
- 你知道嗎,我根本不想知道 乘起來等於8128,我只想吸娜娜奇。
我不在乎8128能否整除1、2、4、8、16、32、64、127、254、508、1016、2032、4064和8128等數字,反正就算沒人看他,他仍然是合數。
- 8191來自海王星,因為完全數後面33550336中間完全數的是8191?梅森質數8191? 我從原始碼中看不到8191這個數字,不過程式會自動計算,因此我不必擔心筆誤,或抄錯數字,反正8191就如同電算器一般,會自動顯示出8191。除非你打錯變成Template:Value或{{{valua}}}
- 你知道嗎,我根本不想知道 乘起來等於33550336,我只想吸娜娜奇。
33550336有1、2、4、8、16、32、64、128、256、512、1024、2048、4096、8191、16382、32764、65528、131056、262112、524224、1048448、2096896、4193792、8387584、16775168和33550336等超多因數,但不要緊,因為33550336關注度不足,此描述33550336的模板不會放到任何條目中,因此不必擔心他太長的問題。
- 131071來自深淵,因為完全數後面8589869056中間完全數的是131071?梅森質數131071? 我從原始碼中看不到131071這個數字,不過程式會自動計算,因此我不必擔心筆誤,或抄錯數字,反正131071就如同電算器一般,會自動顯示出131071。除非你打錯變成Template:Value或{{{valua}}}
- 你知道嗎,我根本不想知道 乘起來等於8589869056,我只想吸娜娜奇。
8589869056有1、2、4、8、16、32、64、128、256、512、1024、2048、4096、8192、16384、32768、65536、131071、262142、524284、1048568、2097136、4194272、8388544、16777088、33554176、67108352、134216704、268433408、536866816、1073733632、2147467264、4294934528和8589869056等超多因數,但不要緊,因為8589869056關注度不足,此描述8589869056的模板不會放到任何條目中,因此不必擔心他太長的問題。
我從原始碼中看不到524287這個數字,不過程式會自動計算,因此我不必擔心筆誤,或抄錯數字,反正524287就如同電算器一般,會自動顯示出524287。除非你打錯變成Template:Value或{{{valua}}}
- 你知道嗎,我根本不想知道 乘起來等於137438691328,我只想吸娜娜奇。
- (:)回應:@克勞棣: {{{orderstr}}} 就是正統維基語法,仿造常用的Help:模板#创建并编辑模板、Help:默认参数設計的,旨在為了讓「維基人」能方便使用,做字串替換,比如{{{value}}}會被替換成自動計算的值,比如質因數分解的2 x 3 x 7。完全數那個為了示例,我隨便打得,不意味著要這樣用,當然在模組理打長篇完全數介紹也是可行的,跟原本專制的模組比起來,已大幅改善。此外腳註跟模組無關,只要是維基語法當然都支援,即便只是普通模板,都ref照樣是會顯示的。-- 宇帆(留言·歡迎簽到,緲子偶素化錸合鎵錸鎢(ReMu·GaReW)) 2018年11月3日 (六) 18:28 (UTC)
参考資料
- ^ 李佳芬. 《有趣的數論:梅森先生您在研究什麼?》. 彰化縣: 九章出版社. 2017-09-07. ISBN 1415926535897 请检查
|isbn=
值 (帮助). - ^ 李佳芬. 《有趣的數論:梅森先生您在研究什麼?》. 彰化縣: 九章出版社. 2017-09-07. ISBN 1415926535897 请检查
|isbn=
值 (帮助).
- (:)回應:@克勞棣:抱歉,剛才網路不穩又一直編輯衝突,打很久的東西還不慎遺失,有點情緒上來了不好意思 (事實上中間還遭到Xayahrainie43兩度竄改造成數個條目出現超時錯誤,讓人十分生氣),我重新說明
- 下列文字
- 因為{{{number}}}有一個質因數{{{value}}}是[[梅森素數]],因此是{{{orderstr}}}{{{property}}}。
- 的意思僅是為了示範功能,而非正確性,要正確性當然可以再添加條目時來寫
- 我這裡是要示範(此為完全數的case,對於其他性質可能會有所不同):
- {{{number}}}會被替換成數字
- {{{value}}}會被替換成數字對應的梅森素數
- {{{orderstr}}}會被替換成此數位於數列中第幾個
- {{{property}}}會被替換成此數列的內部連結
- 就只是這樣而已,對於所謂「原本的樣子」無任何關聯,你大可以改成其他句子
- 例如
- 以上的執行結果為:
- (:)回應:@克勞棣:抱歉,我的回答可能有點亂,但希望能解決您對本模板Module:Number的疑慮。-- 宇帆(留言·歡迎簽到,緲子偶素化錸合鎵錸鎢(ReMu·GaReW)) 2018年11月3日 (六) 19:45 (UTC)
- (:)回應:@克勞棣::根據您所提到的完全數,已加上能輸出對應梅森素數的參數,語法為
{{{value1}}}
,請複查,感謝。(希望我這次舉的示例文句無語意錯誤或邏輯錯誤......)- 原句「
**#已知{{{number}}}可以寫成{{{value1}}},對應的[[梅森素數]]為{{{value}}},因此是{{{property}}}。
」
- 原句「
- 完成:@克勞棣:參數使用的說明文件已建構,Module:Number/data,希望在實務操作上,這個說明文檔能幫助不會程式設計的維基人能更方便地使用本模組,若有需要補充的部分僅儘管告知,我會盡可能補上,十分感謝。-- 宇帆(留言·歡迎簽到,緲子偶素化錸合鎵錸鎢(ReMu·GaReW)) 2018年11月4日 (日) 21:47 (UTC)
- 表格中的普洛尼克数,
- value2
- 積為本身的連續整數之一
- value1
- 積為本身的連續整數之一
- 「積為本身的連續整數之一」這句中文的文法怪怪的,怎麼解讀都不太通,讓人看不懂。我個人建議改成「兩個連續的非負整數中較小者,其與value2的乘積構成一個普洛尼克數」以及「兩個連續的非負整數中較大者,其與value1的乘積構成一個普洛尼克數」。
- 另外,請問為什麼value2寫在value1的上方呢?誠然,「....為6與7的乘積....」與「....為7與6的乘積....」都是可以的,但通常寫在較上方者,意味著順序較前,那麼這就與前面的「....為{{{value1}}}與{{{value2}}}的乘積....。」不同步了,究竟哪一個要寫在前面呢?-游蛇脫殼/克勞棣 2018年11月5日 (一) 16:09 (UTC)
- (:)回應:@克勞棣:您所提的問題在條目中不會影響,畢竟條目中已經指定輸出的文字為「....為{{{value1}}}與{{{value2}}}的乘積....」,
- 因此他永遠只會輸出「....為6與7的乘積....」
- 除非你把它改成「....為{{{value2}}}與{{{value1}}}的乘積....」
- 他才會輸出「....為7與6的乘積....」
- 除非你把它改成「....為{{{value2}}}與{{{value1}}}的乘積....」
- 因此他永遠只會輸出「....為6與7的乘積....」
- (:)回應:@克勞棣:您所提的問題在條目中不會影響,畢竟條目中已經指定輸出的文字為「....為{{{value1}}}與{{{value2}}}的乘積....」,
- 說明文檔下面那個表格是用程式輸出的,{{{value1}}}與{{{value2}}}順序問題可能是因為MediaWiki內部Lua的堆積實作方式有關,為了讓說明文檔能與模組同步所以做了自動輸出,因此使用了「ForEach迴圈」,這個迴圈特特性只保證了能窮舉,但不保證順序
- 此實作方式只有用在輸出說明文檔的表格中,用於條目中的部分有另外撰寫確定其順序的程式碼
- 因為這部分跟MediaWiki內部的實作有關,如果還要順序的說明文檔反而麻煩
- 我之所以要讓說明文檔自動生成的原因是,如果我改了程式,忘了更新說明文檔,那其他編者可能會讀到舊的資料
- 而且要同步兩個不同的文件,也是滿費工夫的,且也有筆誤的可能
- 總之我可以保證他在條目內的順序完全照編者所輸入的順序,因此能否請您不再在意說明文檔內部的順序呢?
後續運維討論
- 出問題了。條目69有「49合數」、「54虧數」、「46不尋常數」等等字眼;條目90有「65合數」、「20過剩數」、「21半完全數」、「10普洛尼克數」等等字眼;條目97有「74虧數」、「66不尋常數」等等字眼;應該還有很多。-游蛇脫殼/克勞棣 2018年11月6日 (二) 03:07 (UTC)
- @a2569875:君:請問您的numberDivisorInformation與singleNumberInformation主要有何不同?什麼情況該用前者?什麼情況該用後者?另外,請問為什麼您在某些數字條目先是用numberDivisorInformation,後來又改成singleNumberInformation(如153、145、156)?作此改變的用意與理由是什麼?謝謝回答!-游蛇脫殼/克勞棣 2018年11月15日 (四) 15:18 (UTC)
@A2569875:Mediawiki建议所有Module都通过Template进行间接调用。
- @A2569875:又發現到一個問題,請問質數是否必然是无平方数因数的数?-游蛇脫殼/克勞棣 2018年11月30日 (五) 11:55 (UTC)
- (:)回應@克勞棣:因為所有質數都是无平方数因数的数,請參考167和161,我只列出前100個「質」无平方数因数的数,後面的「質」无平方数因数的数透過
|print black list=無平方數因數的數
黑名單防止列出。-- 宇帆(留言·歡迎簽到,緲子偶素化錸合鎵錸鎢(ReMu·GaReW)) 2018年11月30日 (五) 12:39 (UTC)- 我本來要回應你:「閣下完全誤會我的意思了。我要說的是,431、433、419、421都沒有寫到它們是无平方数因数的数。」,接著就連續兩次編輯衝突。請問您為何要防止列出呢?-游蛇脫殼/克勞棣 2018年11月30日 (五) 12:49 (UTC)