“择主而事”重判断
——选择结构算法的描述
《亡羊补牢》是我们熟知的成语故事,养羊人的选择不同,造成的结果也大不一样。这个故事给我们的启示是,在面对人生中的选择时,我们要选择正确的方向去努力,不应在错误方向上越走越远,要从根源上避开错误。正如有的学者认为“选择比努力更重要”,那“聪明”的计算机碰到“问题”是如何进行判断并做出选择的呢?
想一想
在《亡羊补牢》这一成语故事中,养羊人开始的选择是什么,后来的选择又是什么?养羊人的不同选择造成的结果分别是什么?用简洁的语言描述一下。
1
生活中的选择结构算法
2
计算机解决问题的一般过程
算法的选择结构是指在算法中,通过对条件的判断,根据条件是否成立而选择不同流向的算法结构。
在日常生活中,经常会遇到选择结构的事情,处理这些事情,关键是确定好条件,然后判断条件是否成立,来选择要做的事情。
一、生活中的选择结构算法
如亡羊补牢釆用的是“选择法”,一般有以下步骤:
第一步,选择是否将羊圈的破洞补全。
第二步,如果选择不补全破洞,则羊继续丢失;如果选择补全破洞,则羊不再丢失。
选择结构的算法除了可用自然语言描述外,还可用思维导图的形式来描述。
二、计算机解决问题的一般过程
“亡羊补牢”问题用计算机解决,大致需经过以下过程:
1.问题分析,建立数学模型
用变量A、B、C分别表示不补全羊圈的破洞、补全羊圈的破洞和羊圈的状况,将三个数值赋予三个变量。问题转化为:判断变量C的数值是变量A的数值还是变量B的数值,再确定执行的动作。
2.确定算法
用自然语言描述如下:
(1)定义三个变量A、B、C;
(2)把数值1赋值给变量A,把数值2赋值给变量B,把数值3赋值给变量C(赋初值);
(3)判断变量C的数值是变量A的数值还是变量B的数值,若是变量A的数值,则羊继续丢失;若是变量B的数值,则羊不再丢失。
(4)结束。
3. 编写程序
选择一种计算机语言,将算法转换成程序。
4.运行并调试程序
议一议
设计一个输出两个数a、b中较大数的算法,如何实现?请用自然语言或思维导图描述输出较大数的步骤。
可引进第三个变量用来存储较大数,并以此来解决问题。
练一练
由键盘输入一个数X,如果X是偶数,输出“yes”,否则输出“no”,请用自然语言描述此算法。若用计算机解决此问题,大致过程是怎样的?
判断一个数是否为偶数,可使用求余运算,X能被2整除,余数为0,则X为偶数,否则X为奇数。
谢 谢