7進位制加法、乘法表

言:

幾天前無意從網上Download了一本電子書,名叫《數學是什麼》由【美】R.柯朗、H.羅賓 著,科學出版社1985版。目前,只是淺淺的看了一章不到,即便是這樣還是被“書中通俗易懂的語言,深入淺出地敘述許多數學分支的基本概念、實質和分析問題的方法。(以上取自書中內容簡介)”所感染、深受啓發。遂決定在隨後的日子裏用一定的時間,好好的通讀這本書,希望能夠有所收穫。鑑於我是一個懶惰的人,今日着一筆墨在博客裏留下支言片文,全當記錄下我在此書學習過程中的一些感觸,僅以此來鞭策我努力的讀完此書。

 

注:

如果,你也對此書感興趣,你可以從這裏下載:《數學是什麼》。此書,源自網絡請不要用於任何商業目地。如果此電子書侵害了某人或機構請於我聯繫我將盡快刪除此書。下面是此書的封面:

正文:

書中講到了非十進制的計算並列出了七進制運算的加法和乘法表。於是,就想着把它打印出來。通過做這個小程序也回答了書中習題1)作出二十進位制中的加法表、乘法表,並作出一些同樣類型的練習。下面是輸出的結果截圖並附上實現的源代碼(C語言)。

現在,讓我們用24265,在這裏數的符號是七進制中的符號(在十進制中,這相當於18145注1)。乘法規則和十進制中的情形一樣。我們開始用45,由乘法表知,得26

 

    我們在個位處寫下6並把2“進”到前一位,然後我們求出4*6=33,和33+2=55,我們寫下5然後繼續以這種方式進行直到全部乘完。把14565630加起來,在個位上我們得6+0=6在十位的地方我們有5+3=11,再寫下1並把1記到第百位上,在那我們有1+6+4=14。最後的結果便是265*24=10416注2

    爲了覈對這個結果,我們可以在十進位制中乘同樣的數。10416(七進位制)在十進位制中可以這樣寫:找7的冪一直到第四位,72=49,73=343,74=2401因此10416=2401+4*49+7+6注3,這是十進位制中的值。通過把這些數加起來,我們就知道在七進位制中的10416等於十進位制中的2601。現在在十進位制中我們用18145,這結果也是2610,所以計算是對的。

    通過上述計算可以斷定程序生成的“七進位制加法、乘法表”是正確的。我們把範圍再擴大一下來進一步測試這個程序,看是否依然能正確的得出結果。

 

1讀者可以證明:在以十爲基底變成任何其它基底B(這裏是7)的一般規則是,用B連續除以十爲基底的整數z(這裏是18145),所得的餘數將是在以B爲基底的系統中的數碼,例如

 

1810 = (24)7

 

  

2書中原話:“在七位的地方我們有5+3=11,再寫下1並把1記到第四十九位上,在那我們有1+6+4=14。最後的結果便是265*24=10416。”書中所說的“七位”、“第四十九位上”,我百思不得其解,凝惑是否爲印刷錯誤,不敢自專請大家甄別。

3各位是否像我一樣初看這個式子的時候一頭霧水,一時搞不懂這個式了的意義。好在身邊的網絡,“百度一下”疑惑頓消。書中給出的式子是經過簡化的(鬱悶!在學習的過程中這種經歷我已經不是第一次了,它給我帶來的困惑遠遠大於印刷錯誤所帶來的煩惱。),完整的式了應該如下:

    10416是一個五位數,7的冪:七進制的各位71=0,72=49,73=343,74=2401所以得出:

10416

=(1*2401)+(0*343)+(4*49)+(1*7)+(6*1)

=2401+0+4*49+7+6

=2401+4*49+7+6

 

 

源碼:

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章