《九九乘法歌诀》,又常称为“小九九”。现在学生学的“小九九”口诀,是从“一一得一”开始,到“九九八十一”止,而在古代,却是倒过来,从“九九八十一”起,到“二二得四”止。因为口诀开头两个字是“九九”,所以,人们就把它简称为“九九”。大约到13、14世纪的时候才倒过来像现在这样“一一得一……九九八十一”。 中国使用“九九口诀”的时间较早。在《荀子》、《管子》、《淮南子》、《战国策》等书中就能找到“三九二十七”、“六八四十八”、“四八三十二”、“六六三十六”等句子。由此可见,早在“春秋”、“战国”的时候,《九九乘法歌诀》就已经开始流行了。 现在人们一般把那些有心计、会算计、善谋划的人形容为心里有“小九九”。 西方文明古国的希腊和巴比伦,也有发明的乘法表,不过比起九九表繁复些。巴比伦发明的希腊乘法表有一千七百多项,而且不够完全。由于在十三世纪之前他们计算乘法、除法十分辛苦,所以能够除一个大数的人,会被人视若数学专家。十三世纪之初,东方的计算方法,通过阿拉伯人传入欧洲,欧洲人发现了他的方便之处,所以学习这个新方法。当时,用新法乘两个数这类题目,是当时大学的教材。 世界文明古国乘法表比较 古希腊、古埃及、古印度、古罗马没有进位制,原则上需要无限大的乘法表,因此不可能有九九表。例如希腊乘法表必须列出7x8,70x8,700x8,700x8,7000x8……。相形之下,由于九九表基于十进位制,7x8=56,70x8=560,700x8=5600,7000x8=56000,只需7x8=56一项代表。 古埃及没有乘法表。考古家发现,古埃及人是通累次迭加法来计算乘积的。例如计算 5x13,先将13+13得26,再迭加26+26=52,然后再加上13得65。 巴比伦算术有进位制,比希腊等几个国家有很大的进步。不过巴比伦算术采用60进位制,原则上一个“59x59”乘法表需要59*60/2=1770项;由于“59x59”乘法表太庞大,巴比伦人从来不用类似于九九表的“乘法表”。考古学家也从来没有发现类似于九九表的“59x59”乘法表。不过,考古学家发现巴比伦人用独特的1x1=1,2x2=4,3x3=9……7x7=49,……9x9=81 ……16x16=256 …… 59x59=3481 的“平方表”。要计算两个数a,b的乘积,巴比伦人则依靠他们最擅长的代数学, axb=((a+b)x(a+b)-axa-bxb)/2。例如 7x9=((7+9)x(7+9)-7x7-9x9)/2=(256-49-81)/2=126/2=63. 古玛雅人用20进位制,跟现代世界通用的十进位制最接近。一个19x19乘法表有190项,比九九表的45项虽然大三倍多,但比巴比伦方法还是简便得多。可是考古学家至今还没有发现任何玛雅乘法表。 用乘法表进行乘法运算,并非进位制的必然结果。巴比伦有进位制,但它们并没有发明或使用九九表式的乘法表,而是发明用平方表法计算乘积。玛雅人的数学是西方古文明中最先进的,用20进位制,但也没有发明乘法表。可见从进位制到乘法表是一个不少的进步。 中国春秋战国时代不但发明了十进位制,还发明九九表。后来东传入高丽、日本,经过丝绸之路西传印度、波斯,继而流行全世界。十进位制和九九表是古代中国对世界文化的一项重要的贡献。今日世界各国较少使用希腊等国的乘法。 九九表的特点1、九九表一般只用一到九这9个数字。 2、九九表包含乘法的可交换性,因此只需要八九七十二,不需要“九八七十二”,9乘9有81组积,九九表只需要1+2+3+4+5+6+7+8+9 =45项积。明代珠算也有采用81组积的九九表。45项的九九表称为小九九,81项的九九表称为大九九。 3、古代世界最短的乘法表。玛雅乘法表须190项,巴比伦乘法表须1770项,埃及、希腊、罗马、印度等国的乘法表须无穷多项;九九表只需45/81项。 4、朗读时有节奏,便于记忆全表。 5、九九表存在了至少三千多年。从春秋战国时代就用在筹算中运算,到明代则改良并用在算盘上。现在,九九表也是小学算术的基本功。 九九乘法表的C语言实现 有了c语言,我们可以简单的打印出“九九乘法表”,具体代码如下,在Trubo2.0、3.0、VC6.0下正常。 #include void main() int i,j; for (i=1;i<=9;i++) for (j=1;j<=i;j++) printf("%d*%d=%d ",j,i,j*i); printf("\n"); 一一得一 一二得二 二二得四 一三得三 二三得六 三三得九 一四得四 二四得八 三四十二 四四十六 一五得五 二五一十 三五十五 四五二十 五五二十五 一六得六 二六十二 三六十八 四六二十四 五六三十 六六三十六 一七得七 二七十四 三七二十一 四七二十八 五七三十五 六七四十二 七七四十九 一八得八 二八十六 三八二十四 四八三十二 五八四十 六八四十八 七八五十六 八八六十四 一九得九 二九十八 三九二十七 四九三十六 五九四十五 六九五十四 七九六十三 八九七十二 九九八十一 大九九 c++代码编写 #include using namespace std; void jishuan(int i,int j) int a,b; for(a=i;a<=i+8;a++) {for(b=j;b<=a;b++) {cout< cout<<"\n";} int main() jishuan(11,11); jishuan(21,21); jishuan(31,31); jishuan(41,41); jishuan(51,51); jishuan(61,61); jishuan(71,71); jishuan(81,81); jishuan(91,91);
本文来源:https://www.wddqw.com/doc/c18bb6c9da38376baf1faef4.html