内容正文:
算法的概念及其描述
班级: 姓名:
情境:理解算法的概念
有一个牧羊人带着一头羊,一只狼和一颗大白菜准备过河,他找到一只很小的船,每次只能带一样东西过去,可是如果让狼与羊单独在一起,狼会吃羊,让羊与白菜单独在一起,羊会吃白菜,牧羊人应如何过河?
思考讨论:
算法:是为了解决一类 而采取的 、 的步骤。
活动:理解更相减损法,并得出算法的特征。
“可半者半之,不可半者,副置分母、子之数,以少减多,更相减损,求其等也。以等数约之。”
翻译:第一步:任意给定两个正整数;判断它们是否都是偶数。若是,则用2约分;若不是,则执行第二步。
第二步:以较大的数减较小的数,接着把所得的差与减数比较,并以大数减小数,继续这个操作,直到所得的减数和差相等为止,则这个等数就是所求的最大公因数。
求63和98的最大公因数
算法的特征:
1. ;一个算法一般要求有 个或 个 。
2. ;一个算法一般要求有 个或 个 。
3. ;算法必须能在 个步骤之后 。
4. ;算法中的每一步都是 。
5. ;算法的每个步骤都具有 ,没有 。
算法的描述
活动:如何将“倒计时15秒”的算法描述出来?
1. 自然语言
1 将计数器t(剩余秒数)设为15;
2 如果t大于等于1,执行步骤③,否则执行步骤⑤;
3 显示t,并保持显示1秒,然后清除显示;
4 将t的值减1,跳转至步骤②。
5 倒计时结束。
2. 流程图
三种基本结构
补充完整算法描述的流程图
3.
3.伪代码规避了程序设计语言严格的书写格式,无歧义,结构性强。
t ← 15
while t ≥ 1
output 1
sleep 1s不太适合完全没有程序设计基础的初学者。
clear
t ← t-1
end while
实践练习
某地有两种不同类型的出租车,其计费标准分别为:
甲车3千米起步,价格10元,3千米以上(含3千米)每千米为2元;
乙车3千米起步,价格8元,3千米以上(含3千米)每千米2.2元。
问题:设计算法,在不同里程时给出最优资费的用车选择,用流程图对该算法进行描述。解释其中使用到的基本结构。
学科网(北京)股份有限公司
$$