论文部分内容阅读
中图分类号:G633.6 文献标识码:A文章编号:1673-1875(2009)24-050-01
普通高中课程标准实验教科书(人民教育出版社A版)在主编寄语中提到,要学好数学,首先应当对数学有一个正确的认识.第一,数学是自然的.这套教科书中出现的数学内容,是在人类长期的实践中经过千锤百炼的数学精华和基础,其中的数学概念、数学方法与数学思想的起源与发展都是自然的.第二,数学是清楚的.清楚的前提,清楚的推理,得出清楚的结论,不能“想当然”.笔者认为这两点不仅是学生学好数学的前提,也是新课程下我们教师教好数学的前提,让学生学得“自然”,学得“清楚”,自然会感受到学的“简单”.
算法初步是数学及其应用的重要部分,它也是计算机科学的重要基础,主要的要求有:了解算法的意义,利用程序框图表示解决问题的过程,理解程序框图的三种基本逻辑结构:顺序、条件、循环;掌握五种基本的算法语句:赋值语句、输入语句、输出语句、条件语句、循环语句.其中,利用程序框图表示解决问题的过程是重点也是难点,在从自然语言描述的算法步骤到计算机能识别的程序语言的过渡中,框图起着承上启下的重要过渡作用,因此框图的学习既是重点又是难点,(从框图到程序语言是一个“直译”的过程,难度较小)。对框图的学习关键是把握三种逻辑结构的功能,其中顺序结构是最基本的结构,条件结构也容易被学生理解,笔者认为在这两种结构上计算机的优势并没有显现出来,而对于包含有顺序结构和条件结构的循环结构才是真正体现计算机强大的“反复计算”的功能,因此循环结构是三种逻辑结构中的重点与难点.在07年和08年实施新课程改革的四个省份的7份试卷中出现的对算法内容的考察中,除08年海南、宁夏卷一道考查条件结构外,其余都是考查循环结构的.在画出用循环结构描述算法的流程图之前,需要确定三件事:确定循环变量和初始条件、确定循环体、确定终止条件,分别对应数列中的首项、通项公式、末项。
例1:(2007年宁夏、海南省试卷)如果执行右面的程序框图,
那么输出的S=()
A.2450 B.2500
C.2550 D.2652
解析:要想得到输出结果,首先要读懂程序框图所表示的算法的实际意义。本题是利用循环结构解决有限项求和,计算2+4+…+100的值。从而根据等差数列的求和公式,得出S=2550。
在此当型循环结构中,变量k初值为1,在循环体中每循环一次,k值增加1,因此可以看作数列中的项数,从循环体的入口处(结合初值条件和终止循环的条件)可知,k值为1时第一次进入循环体,k值为50时最后一次进入循环体,因此循环共执行了50次,也就是有50项相加;变量S是累加变量,表示通项公式为{2k}的数列的前50项和.由此我们联想到以下问题:
(1)上述问题一般化后,我们可以解决任意给定通项公式的数列的前n项和问题。如“设计算法求的值,画出程序框图。”我们还保留“变量k初值为1,在循环体中每循环一次,k值增加1”这个结构不变,因此只需要找出题目中所给数列的通项公式及项数,容易得出这是数列 的前50项和,相应的,我们需要将上述框图循环体部分中累加变量的赋值形式更改为。
显然,任意给定通项公式的数列的前n项乘积问题也可以解决,只需要将累乘变量的初值设为1,赋值形式由加变乘。
(2)由于计算机可以给一个变量重复赋值的特点,以上程序循环体部分还有另外一种常见的形式,即变量k的初值为2,循环体部分为“”,终止条件为“?”显然,此时k不再直接的表示循环次数(或者说数列的项数),k成为求和数列中的首项与末项,“k=k+2”本质就是数列的递推公式,前一项加2后的值再赋给k累加到S上,由此我们可以解决任意给定递推公式的数列的前n项和问题。
对于一些较复杂的数列,我们由递推公式不太容易得到末项的值,因此为了表示循环体中终止条件,我们还可以引入一个满足条件“每循环一次就记录一次”的记录数列项数的变量n,与问题(1)统一起来。例如,“设计算法求出斐波那契数列前100项和,画出程序框图,写出程序。a1=1 a2=1 S=a1+a2 n=3 While n<=100 a3=a1+a2 S=S+a3 a1=a2 a2=a3 n=n+1 Wend Print S End
随着新课程改革的深入,对“算法”这个“新双基”的考察也不会仅仅停留在“读懂程序框图”的层面,从内容上讲,还要将算法与数列、不等式等其他数学知识结合起来,从形式上讲将框图补充是一个命题方向。现举例说明:
例2:下面的程序运行次数是( D )
A.14 B.15 C.16D.17
i=7 j=0 Do i=i+5 j=j+1
LOOP UNTIL i>90 PRINT I END
变式:若下面的程序运行次数是16次则整数i的取值范围是?
i=? j=0 Do i=i+5 j=j+1
LOOP UNTIL i>90 PRINT I END
解析:第一次执行循环后,i值为i+5,第十五次执行循环后i值为i+75,第十六次执行循环后i值为i+80,则得到不等式 ,因此,i的取值范围是{11,12,13,14,15}。
普通高中课程标准实验教科书(人民教育出版社A版)在主编寄语中提到,要学好数学,首先应当对数学有一个正确的认识.第一,数学是自然的.这套教科书中出现的数学内容,是在人类长期的实践中经过千锤百炼的数学精华和基础,其中的数学概念、数学方法与数学思想的起源与发展都是自然的.第二,数学是清楚的.清楚的前提,清楚的推理,得出清楚的结论,不能“想当然”.笔者认为这两点不仅是学生学好数学的前提,也是新课程下我们教师教好数学的前提,让学生学得“自然”,学得“清楚”,自然会感受到学的“简单”.
算法初步是数学及其应用的重要部分,它也是计算机科学的重要基础,主要的要求有:了解算法的意义,利用程序框图表示解决问题的过程,理解程序框图的三种基本逻辑结构:顺序、条件、循环;掌握五种基本的算法语句:赋值语句、输入语句、输出语句、条件语句、循环语句.其中,利用程序框图表示解决问题的过程是重点也是难点,在从自然语言描述的算法步骤到计算机能识别的程序语言的过渡中,框图起着承上启下的重要过渡作用,因此框图的学习既是重点又是难点,(从框图到程序语言是一个“直译”的过程,难度较小)。对框图的学习关键是把握三种逻辑结构的功能,其中顺序结构是最基本的结构,条件结构也容易被学生理解,笔者认为在这两种结构上计算机的优势并没有显现出来,而对于包含有顺序结构和条件结构的循环结构才是真正体现计算机强大的“反复计算”的功能,因此循环结构是三种逻辑结构中的重点与难点.在07年和08年实施新课程改革的四个省份的7份试卷中出现的对算法内容的考察中,除08年海南、宁夏卷一道考查条件结构外,其余都是考查循环结构的.在画出用循环结构描述算法的流程图之前,需要确定三件事:确定循环变量和初始条件、确定循环体、确定终止条件,分别对应数列中的首项、通项公式、末项。
例1:(2007年宁夏、海南省试卷)如果执行右面的程序框图,
那么输出的S=()
A.2450 B.2500
C.2550 D.2652
解析:要想得到输出结果,首先要读懂程序框图所表示的算法的实际意义。本题是利用循环结构解决有限项求和,计算2+4+…+100的值。从而根据等差数列的求和公式,得出S=2550。
在此当型循环结构中,变量k初值为1,在循环体中每循环一次,k值增加1,因此可以看作数列中的项数,从循环体的入口处(结合初值条件和终止循环的条件)可知,k值为1时第一次进入循环体,k值为50时最后一次进入循环体,因此循环共执行了50次,也就是有50项相加;变量S是累加变量,表示通项公式为{2k}的数列的前50项和.由此我们联想到以下问题:
(1)上述问题一般化后,我们可以解决任意给定通项公式的数列的前n项和问题。如“设计算法求的值,画出程序框图。”我们还保留“变量k初值为1,在循环体中每循环一次,k值增加1”这个结构不变,因此只需要找出题目中所给数列的通项公式及项数,容易得出这是数列 的前50项和,相应的,我们需要将上述框图循环体部分中累加变量的赋值形式更改为。
显然,任意给定通项公式的数列的前n项乘积问题也可以解决,只需要将累乘变量的初值设为1,赋值形式由加变乘。
(2)由于计算机可以给一个变量重复赋值的特点,以上程序循环体部分还有另外一种常见的形式,即变量k的初值为2,循环体部分为“”,终止条件为“?”显然,此时k不再直接的表示循环次数(或者说数列的项数),k成为求和数列中的首项与末项,“k=k+2”本质就是数列的递推公式,前一项加2后的值再赋给k累加到S上,由此我们可以解决任意给定递推公式的数列的前n项和问题。
对于一些较复杂的数列,我们由递推公式不太容易得到末项的值,因此为了表示循环体中终止条件,我们还可以引入一个满足条件“每循环一次就记录一次”的记录数列项数的变量n,与问题(1)统一起来。例如,“设计算法求出斐波那契数列前100项和,画出程序框图,写出程序。a1=1 a2=1 S=a1+a2 n=3 While n<=100 a3=a1+a2 S=S+a3 a1=a2 a2=a3 n=n+1 Wend Print S End
随着新课程改革的深入,对“算法”这个“新双基”的考察也不会仅仅停留在“读懂程序框图”的层面,从内容上讲,还要将算法与数列、不等式等其他数学知识结合起来,从形式上讲将框图补充是一个命题方向。现举例说明:
例2:下面的程序运行次数是( D )
A.14 B.15 C.16D.17
i=7 j=0 Do i=i+5 j=j+1
LOOP UNTIL i>90 PRINT I END
变式:若下面的程序运行次数是16次则整数i的取值范围是?
i=? j=0 Do i=i+5 j=j+1
LOOP UNTIL i>90 PRINT I END
解析:第一次执行循环后,i值为i+5,第十五次执行循环后i值为i+75,第十六次执行循环后i值为i+80,则得到不等式 ,因此,i的取值范围是{11,12,13,14,15}。