Maple 教材:整數計算

Maple 最主要是一個代數計算軟體 (CAS: Computer Algebra System)。 它在這方面所提供的工具,大約可以說是涵蓋了有史以來全部可以寫得出公式的數學。 這個軟體由一大批專業的數學家、物理學家和計算機工程師發展至今, 絕大多數的個人,已經無法全面瞭解它的內容 (或者說不需要它的全部內容)。 現在開始,讓我們簡列一些普通高中畢業生都知道的數學工具。

前面已經看到有理數的四則運算。 現在我們看一些關於正整數的計算工具。

處理正整數計算的核心工具之一就是質因數分解。Maple 函式是 ifactor( ),例如

ifactor(12);
既然能做質因數分解,當然就知道質數。 您可以用 isprime( ) 函式詢問某正整數是否為質數,例如
isprime(1987);
是的話回應 true 否則回應 false。 任給一個正整數 N,nextprime( ) 回應比 N 大的最小質數 (下一個質數), 而 prevprime( ) 回應比 N 小的最大質數 (前一個質數)。例如
nextprime(6);
prevprime(6);
純粹為了好玩,您可以試試看 prevprime(1)。 其實,Maple 根本可以回答第 i 個質數。例如
ithprime(300);
告訴您第 300 個質數是 1987。而 ithprime(1) 使我們知道, Maple 定義 2 為第一個質數。

那麼,Maple 是不是有辦法找到「所有」的質數呢? 理論上是的:只要您的電腦有無窮多的記憶體,而您可以等待無窮長的時間! 實際上呢,您的電腦有多少記憶體可用、您的電腦執行得多快、以及您願意等多久, 便決定了您可以獲得多麼大的質數。

計算兩個正整數之最大公因數和最小公倍數的函式分別是 igcd( ) 和 ilcm( )。例如

igcd(12, 18);
ilcm(12, 18);
如果想要做整數除法,得到整數的商和餘,可以用 iquo( ) (意思是 integer quotient 整數商)和 irem( ) (意思是 integer remainder 整數餘)。 例如
iquo(31, 7);
irem(31, 7);
7*iquo(31,7) + irem(31,7);

習題

  1. 請問 8705240003352729088 共有幾個 (正) 因數?
  2. 若要將邊長為 4274196 和 16408566 的長方形切割成一樣大的整數邊長正方形 (恰好分完,不可剩下),共有幾種分法?
  3. 八位數的最大質數是幾?最小呢?共有幾個八位數的質數?
單維彰 (2001/10/17) --- [Prev] [Next] [Up]