多语言展示
当前在线:1030今日阅读:39今日分享:10

数制转换的数学实验

人教A版必修三第一章第三节算法案例3,介绍了十进制数与其他进制数之间的转化方法,学生在理解算法原理的基础上,有必要用Mathematica进行数制转换的数学实验.在教学中,将二进制数与十进制数之间的相互转化作为数学实验的教学案例,在学生学会Mathematica编程的基本方法之后,进一步引导学生探索2~61进制数与十进制数之间的相互转换.让学生感受到数学是有趣的,培养学生的探索精神与计算思维能力.       文中代码,在Mathematica11.2中文版下运行通过.
工具/原料

Mathematica11.2

方法/步骤
1

2.A进制(2~9进制)正整数与十进制正整数的互化    2.1 将A进制(2~9进制)正整数转换为十进制正整数    课本中使用循环结构来构造算法,本文使用数量积来构造函数,代码更简洁易懂,其函数可重复使用.代码如下:

2

2.2 将十进制正整数转换为A进制(2~9进制)正整数      算法使用课本中的除k取余法,代码如下:

3

3.B进制(2~62进制)正整数与十进制正整数的互化      3.1 将B进制(2~62进制)正整数转换为十进制正整数      0~9表示数字0~9,a~z表示10~35,A~Z表示36~61.      B进制数必须以字符串方式输入,否则3f将被识别为 3*f,代码如下:

4

3.2 将十进制正整数转换为B进制(2~62进制)正整数B进制数将输出为字符串形式,代码如下:

5

4.将S进制正整数转化为T进制正整数例如将十二进制数852(12)转换为十六进制数.先将十二进制数转换为十进制数,再将十进制数转换为十六进制数.代码如下:

6

Mathematica11.2内置了将2~36进制数转换为十进制数的函数,例如将十二进制数852(12)转换为十进制数.

7

Mathematica11.2也内置有将十进制数转换为2~36进制数的函数,例如将十进制数1214转换为十六进制数.

注意事项
1

文中代码对基数与要转换的正整数都进行了一定的限制,当输入不符合要求的数时,函数不计算,将原样输出.

2

教学时,在数学实验室里,每位学生一台计算机,利用Mathematica11.2进行了数制转换的数学实验,学生的积极性高,兴趣浓厚,通过探索与实践,学生对数制之间的互化理解得更为深刻,取得了较为理想的教学效果.

推荐信息