有个六年级的小学生问我,为什么正比例关系是一条直线,而反比例关系是一条曲线。这不是明摆着的吗?估计很多人都会这么想。但是,这个阶段的小孩没有形成明确的函数概念,请站在他们的角度上体会一下他们理解这种概念的艰难。
其实用Python,很容易就可以设计出一个数学实验,以可视化的形式把这个问题给说清楚。首先我们来看看,可视化展示正比例函数的代码。
from matplotlib.pyplot import plot, axis, show
xlist = range(0,6)
ylist = []
# 下面的a是正比例系数
a=3
for x in xlist:
#正比例表达式
y=a*x
ylist.append(y)
print("x="+str(x) + "; y=" +str(y) )
plot(xlist, ylist)
axis([0,5,0,25])
show()
运行效果是:
类似地把这段代码略加改动,对反比例函数进行展示。
孩子提出了另外一个问题。这明明是一条折线啊,不是是曲线啊?当然,我们都知道,这是由于取样点不够,取图形的光滑度不足,难以有足够说服力,于是我们对代码加以改造。
这么一来,再把改造的时候所涉及到系数、坐标缩放比例等问题跟孩子说清楚,他也就知道正比例反比例是怎么回事了。代码里头所定义的常数变量,让孩子自己去把它变大变小。观测在不同的常数设定值下的曲线的变化,就是一个很好的数学实验。比如把a改回3:
上面的这个过程,虽然看起来非常非常的简单,代码实现的思路极其简单,但其中体现了两种极其重要的数学学习的思想:建模和可视化。让孩子按照这种多元融合的方式走下去,一定会有好的学习效果。