内容正文:
2.3用算法解决
问题的过程
1
目录
CONTENTS
1
抽象与建模
2
设计算法
3
描述算法
2
“动动有奖”是某手机走路计步器程序(程序界面如图2.3.1所示),它能根据系统传递给它的走路步数给运动者奖励,运动者可以用累计的“奖金”去换取软件开发商提供的各种体育用品。具体的奖励规则如下:
1.每天走路的前1000步奖励0.3金,之后每2000步奖励0.1金(不足2000步没有奖励),每天最高奖励不超过3金。
2.每天必须到计步器页面点击“领奖”按钮,才能领取昨日走路奖金。
3.如果连续3天领奖成功,从第4天起走路奖金翻1倍(乘以2),每天最高奖励不超过6金。翻倍期间若有1天没有领奖(即连续每天领奖行为中断),则翻倍权益取消,重新连续3天领奖成功才能继续翻倍。
试用流程图描述一天获得的“奖金”。
知识点:用算法解决问题的过程
抽象与建模
设计算法
描述算法
4
01
PART TWO
抽象与建模
5
01 抽象与建模
抽象与建模(分析已知条件,建立数字模型)
①提炼核心要素并加以确定或假设(已知、未知)
n:动动天数
i:第几天(1≦i≦n)
Xi:第i天走路的步数
t:第i天的原始奖金
Fi:第i天的奖金是否领取标记(1表示成功领取,0表示没有领取)
Si:第i天的实得奖金
total:n天的奖金数
6
01 抽象与建模
抽象与建模(分析已知条件,建立数字模型)
②用数学符号描述解决问题的计算模型
7
02
PART TWO
设计算法
8
02 设计算法
设计算法:
遵循算法的特征、围绕算法的要素设计算法
三个步骤:输入数据、处理数据、输出处理数据。
①输人总天数n。
②表示天数的变量i初始化为1。
③若i≤n,则转④,否则转⑦。
④输人第i天的数据(包括第i天走路步数X,是否成功领取第i天“奖金”的标:F)。
⑤根据当前输人的数据X,F,统计该天领取的奖金并累加到总奖金total中。
⑥表示天数的变量i增加1,然后转③。
⑦输出变量total的值。
9
03
PART TWO
描述算法
10
03 描述算法
描述算法:
可用自然语言、流程图、伪代码、计算机程序设计语言描述。
11
演示完毕,谢谢观看!
2.3用算法解决
问题的过程
12
$