用计算机写高中数学程序框图,画“程序框图”,高中数学最实用基本技能之一...

本文详细介绍了如何理解和绘制高中数学中的程序框图,强调了其作为基本技能的重要性。通过理解算法概念、程序框图符号及功能,以及分析和补全程序框图的方法,帮助学生解决相关问题。程序框图在软件设计和业务流程中也有广泛应用,建议学生深入学习。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.基本问题说明

一般地,根据题设已知条件,要求画出实现可解决某类问题的程序框图,此即为本文所论述的‘程序框图’基本问题。

从历年算法初步的考查来看,由于考试评分客观性方面的考虑,高考时往往是针对已给定的程序框图来进行设问,其中“框图+循环”是常见的题设背景。

常见的设问类型包括输出结果、填空补全、(对整个算法的作用和意义的)直观理解等,可能的题型有:

1) 设问算法功能:已知程序框图和条件,设问算法功能、用途等;

2) 设问输出结果:已知程序框图和条件,设问输出结果的值;

3) 设问输入参量:已知算法输出结果,设问输入参量;其思考过程则与设问输出结果刚好相反 – 即需要倒推出输入参量的值。但分析方法和思路是一样的。

4) 补全算法(填空):根据已知条件,补全不完整的程序框图,包括输出(中间)结果、判断条件、处理算法等。

提示:有时,程序框图题还会与其它模块如概率、数列等结合在一起出题,详见综合应用篇的相关例题。

拓展说明:

① 从学习知识的角度,我们需要掌握画一个完整的程序框图的所有基础知识和基本技能。

② 从未来工作角度来看,程序框图是与软件有关专业的毕业生必须掌握的一门技能,因为相对于软件代码,程序框图具有简洁、直观、易读、易理解、易沟通的优点。

比如,在写软件代码之前的构思、设计阶段,一般利用不同抽象程度的程序框图来进行思考、分析、讨论、设计等,大大提高了有关效率和效果。

③ 而且,即使不从事软件有关的工作,几乎所有人都或多或少会涉及流程图,比如各种业务流程图(各种过程或步骤本质也是一种‘程序’)。

④ 总之,对将来而言程序框图可能是高中数学中最实用的基本技能之一,所以希望大家对这块内容认真学习、熟练掌握,不要因为在查角度中,这块知识不算重点、难点内容,就轻视它。

2.解决问题的一般方法

1) 画程序框图要点

① 理解和熟记算法、程序框图的相关概念;

② 理解和熟记程序框图符号及其作用、使用要求和规则、以及程序框图的构成等;

③ 熟知画程序框图的相关要求。

2) 分析和/或补全程序框图

① 一般地,读图过程为:读懂一行 -> 读懂小块 -> 读懂整图

在能理解各个程序框(即一行)含义的基础上,从起始框开始,按顺序读图——一小块一小块读图,理解每块所表示的功能;然后再把每小块的功能依次串起来(成“大块”),边串边理解串在一起后的功能或用途,直至读懂整个图。

提示:高中阶段学的程序框图比较简单,所以很多同学不按套路或许也能看懂有些框图。但未来工作中程序框图(如真正的软件算法)将复杂得多,必定离不开这种“分而治之”的思想。所以,大家还是要养成良好得思维方法和习惯。

② 解题:理解整个程序框图后,根据题目要求进行作答,如推断出程序框图得功能、求出输出结果、补全算法等。

3.典型例题

例1如图是一个算法的程序框图,则该程序框图所表示的功能是__?

解:利用算法相关知识可知,这个程序框图所表示的功能是求a,b,c三个数中的最小值。

2e9cb033d8daa3b7db8a534918020ecd.png

讲解:

① 这类已知程序框图求解算法意义或输出结果的题型,其一般方法是:

a) 在能理解各程序框含义的基础上,从起始框开始,按顺序读图——一小块一小块读图,理解每块所表示的功能

b) 然后再把每小块的功能依次串起来,边串边理解它们串在一起后的意义

c) 最后得出程序框图所表示的功能,并根据题目要求求解或作答问题

② 提示:这里提到的“一小块”与文章中出现的段或其它场合出现的模块概念有相通之处——即把大问题或复杂问题“分而治之”。尤其当程序框图比较复杂时,如果不知道这么处理,一定会把自己整得晕头转向,甚至解决不了问题。

“小块”可以理解为一起完成某个小功能的m个相关程序框(当m=1时,该小块就只有一个程序框)。比如,上图的红框或蓝框内的部分就可看作一个小块——“使a保存两输入数中较小那个数”(以供后续框图使用或输出)。

“小块”的划分可按需和程序结构特征进行,比如循环体的一个分支可以看作一个“小块”,其根本目的 使为了又快又好地看懂算法。

③ 从上图可知,红框和蓝框部分完全一样的,属于重复结构。这里只是重复了一次,问题不大。但当重复三次或以上时,为了使程序框图更简捷、更易阅读,一般需要利用循环结构来避免重复。

④ 提示:达成某个功能的算法实现不唯一,如本题“求a,b,c三个数中的最小值”的算法设计也可以用下面程序框图来表示:

b3972a7e458690d1f2c05c9b976fca22.png

提示:实际中,一般会选择时间效率和/或空间效率更高的算法,而不是随便地选择一种算法实现。

例22006年1月份开始实施的《个人所得税法》规定:全月总收入不超过1600元的免征个人工资、薪金所得税,超过1600元部分需征税.设全月总收入金额为x元,前三级税率如下左表所示:

ce69ca3f9e6a1441e551e30028f96e6f.png

当工资薪金所得不超过元,计算个人所得税的一个算法框图如图

则输出①、输出②分别为( ).

f71e0460e1bd55b9b96cb1ba85129e23.png

A.0.05x; 0.1x B.0.05x; 0.1x-185

C.0.05x-80; 0.1x D.0.05x-80; 0.1x-185

解:设全月总收入金额为x元, 所得税额为y元,则y与x之间的函数关系为:

y=0 (0

y=(x-1600)×5% (1600

y=25+(x-2100)×10% (2100

所以答案为D。

例3如果执行右边的程序框图,输入正整数N(N≥2)和实数a1,a2,……,an,输出A,B,则( )

A. A+B为a1,a2,……,an的和

B. (A+B)/2为a1,a2,……,an的算术平均数

C. A和B分别是a1,a2,……,an中最大的数和最小的数

D. A和B分别是a1,a2,……,an中最小的数和最大的数

8edab5d967e93dc07901ee833e284449.png

解:分析程序中各变量、各语句的作用,再根据流程图所示的顺序,可知:

该程序的作用是“求出a1,a2,…,an中最大的数和最小的数,其中A为a1,a2,…,an中最大的数,B为a1,a2,…,an中最小的数”

故选C

讲解:

① 上例和本题属于“算法填空补全”题型,一般涉及到补全“输出结果”、判断条件、处理算法等。解答这类题的一般方法:

a) 首先仍然是要把图读懂无误(具体读图思路见前述讲解以及图上的彩色提示——最主要原则就是懂得并善于分而治之)

b) 再根据已知条件和推出的算法功能,顺推和/或反推出空格的内容。

② 在这类题型种,常用工具是(列表)分析法,即依次列出所需步骤的结果,并通过分析其内在的联系来推出空格所应填内容;在循环结构中,当不易找到头绪时,可能时可将几次或所有循环相关信息列表,以便更清晰观察出其中规律。

温馨提示:本文为高中数学必修3第5讲。关注百家号“轻快学习课堂”,可便捷地查阅所有文章。

举报/反馈

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值