九九表

九九表

九九表也稱為“乘法口訣表”,俗稱《小九九》,以一至九每二數相乘所編成,如“一一得一”,“九九八十一”等,起源甚早,我國敦煌漢簡和居延漢簡中,均有九九表的描述,元代朱世傑所著《算學啟蒙》中,有九九數法。九九表是個位數的乘法口訣,因古代從“九九八十一”開始,故名九九表。《管子》等先秦典籍中許多九九口訣片段,史籍中有齊桓公設庭燎,視“九九”為“薄能”而招賢納士的故事。20世紀50~60年代出土的九九表竹簡很多,然而均殘缺。

基本介紹

  • 中文名:九九表
  • 外文名:nine nine table
  • 俗稱:《小九九》
  • 定義:乘法口訣表
  • 表示:數學表格,或用C語言描述
  • 套用:數學
口訣簡介,歷史故事,故事內容,反映事實,程式實現,

口訣簡介

作為啟蒙教材,我們都背過九九乘法表:一一得一、一二得二……九九八十一。而古代是從"九九八十一"開始,因此稱"九九表"。九九表的使用,對於完成乘法是大有幫助的。齊桓公納賢的故事說明,到公元前7世紀時,九九歌訣已不稀罕。也許有人認為這種成績不值一提。但在古代埃及作乘法卻要用倍乘的方式呢。舉個例子。如算23×13,就需要從23開始,加倍得到23×2,23×4,23×8,然後注意到13=1+4+8,於是23+23×4+23×8加起來的結果就是23×13。從比較中不難看出使用九九表的優越性了。
根據考古專家在湖南張家界古人堤漢代遺址出土的簡牘上發現的漢代"九九乘法表",竟與現今生活中使用的乘法口訣表有著驚人的一致。這枚記載有"九九乘法表"的簡牘是木質的,大約有22厘米長,殘損比較嚴重。此前在西里耶古城出土的一枚秦簡上也發現了距今2200多年的乘法口訣表,並被考證為中國現今發現的最早的乘法口訣表實物。除了里耶秦簡外,與張家界古人堤遺址發現的這枚簡牘樣式基本一致的"九九乘法表"還曾在樓蘭文書中見到過,那是寫在兩張殘紙上的九九乘法表,為瑞典探險家斯文赫定在上個世紀初期發掘。乘法表在古代並非中國一家獨有,古巴比倫泥版書上也有乘法表。但漢字(包括數目字)單音節發聲的特點,使之讀起來朗朗上口;後來發展起來的珠算口訣也承繼了這一特點,對於運算速度的提高和算法的改進起到一定作用。
九九表是個位數的乘法口訣,因古代從“九九八十一”開始,故名九九表。《管子》等先秦典籍中許多九九口訣片段,史籍中有齊桓公設庭燎,視“九九”為“薄能”而招賢納士的故事。20世紀50~60年代出土的九九表竹簡很多,然而均殘缺。九九表在西方也叫作“畢達哥拉斯表”。

歷史故事

故事內容

九九表在我國古代叫九九歌。關於它有這樣一個故事:傳說春秋時期,齊桓公曾經設立招賢館徵求天下才。可是等了很久,一直沒有人來應徵。過了一年多。才來了一個人.他把“九九歌”獻給齊桓公,作為表示才學的獻禮。齊桓公覺得此人十分可笑,就對這個人說:“九九歌也能拿出來表示才學嗎?”
來人很有禮貌地回答說:“會九九歌確實夠不上什麼才學,但是如果您對我這個只懂得九九歌的人都能以禮相待的話,還怕天下高明人才不投奔到您這兒來嗎?”
齊桓公覺得此人說得有理.就把他迎進招賢館,並給予隆重的招待。這個訊息不脛而走,果然,不到一個月的時間,就有許多賢才從四面八方來到了齊國。

反映事實

這個故事說明,九九歌的出現不會晚於春秋戰國時代,在那時九九歌已經廣為流傳了。最早的九九歌是大數排在前面的,從“九九八十一”開始到“二二而四”止。到《孫子算經》已經擴充至“一一如一”,這大約是公元5至10世紀的事了。大約在13-14世紀的宋朝,九九歌的順序才反轉過來,變成和現代所使用的一樣,由“一一得一”開始至“九九八十一”結束。

程式實現

利用C語言輸出
利用C語言可輸出九九表,該例的關鍵在於理解for循環語句,掌握游標位置的控制方法。具體程式如下:
#include <stdio.h>#include <conio.h>void main(){int i,j,x,y;clrscr();printf("\n\n ***九九表***\n\n")x=9;y=5;  for(i=1;i<=9;i++){      gotoxy(x,y);      printf("%2d",i);      x+=3;  }  x=7;  y=6;  for(i=1;i<=9;i++){      gotoxy(x,y);      printf("%2d",i);      y++;  }  x=9;  y=6;  for(i=1;i<=9;i++){      for(j=1;j<=9;j++){          gotoxy(x,y);          printf("%2d",i);          y++;      }    y-=9;  x+=3;  }  printf("\n\n");}
利用Excel製作
九九表中的內容存在著明顯的規律,每一個表達式都是由被乘數、乘號、乘數、等號和積5個部分構成的,而式子中的被乘數與單元格所在的列號相同,乘數與單元格所在的行號相同。可以構想,使用ROW、COLUMN兩個函式的值來表示單元格中乘法表達式的被乘數和乘數,表達式中的積可以使用這兩個函式值相乘得到。以往使用Excel進行計算時通常都是在1個單元格中輸入1個數值或字元串,那么如何在1個單元格中輸入由被乘數、乘號、乘數、等號和積5個部分組成的乘法表達式呢?在這裡可以使用文本連結運算符“&”將這些內容連線起來構成1個新的字元串來表示九九表中的1個乘法表達式。實施步驟如下:
(1)選中Excel工作表中的A1單元格。
(2)在單元格中輸入公式“=COLUMN()&”×”&ROW()&”=”&ROW()*COLUMN()”。
(3)拖動A1單元格右下角的“填充柄”到A9單元格,即將A1單元格中的公式複製到A2:A9單元格區域。此時A1:A9單元格區域處於選中狀態,拖動區域右下角的“填充柄”,將公式複製到B1:I9。
需要注意的是這樣直接得到的結果並不盡如人意。右上方的表達式應該隱去,才符合本任務的要求。也就是說,乘數大於或等於被乘數時才顯示乘法表達式,而在乘數小於被乘數時單元格中不顯示內容。
(4)修改A1單元格的公式,在原公式中添加IF函式:
”=IF(ROW()<COLUMN(),"",COLUMN()&”×”&ROW()&"=”&ROW()*COLUMN())”
完成公式輸入後,再將公式複製到其他單元格,最終即得到Excel形式的九九表。
利用Excel製作九九表利用Excel製作九九表

相關詞條

熱門詞條

聯絡我們