解决问题的一般过程和用计算机解决问题
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
分析问题
寻找解决问题的 途径与方法
解决问题并 验证结果
1 明确目标·抽象建模 2 过程分解·设计方案 3 编程调试·验证结果
编程调试
编写程序 利用计算机程序设计语言描述算法,实现问题求解的过程。
调试程序 发现错误分析其产生的原因,并进行改正;对运行的结果进
行分析和验证,判断其是否正确和完整。
Python语言
5、 light.hideturtle()
6、 light.screen.delay(0) # 禁用绘制过程的动画显示
7、 # 红灯亮
8、 light.color("red", "red")
9、 light.begin_fill()
10、light.circle(20)
11、light.end_fill()
单击按钮: 信号灯的变化
信号灯 终止状态
红灯亮 红灯倒计时15 s 等待 红灯亮
禁行
绿灯亮保持20 s 通行
禁行
2.计算机解决问题的过程
分析问题
寻找解决问题的 途径与方法
解决问题并 验证结果
1 明确目标·抽象建模 2 过程分解·设计方案
计算机按照程序执行指令。
过程分解
原始问题
主要功能1
……
主要功能m
12、# 红灯保持显示
13、time.sleep(10)
14、# 绿灯亮
15、light.color("green", "green")
16、light.begin_fill()
17、light.circle(20)
18、light.end_fill()
总结计算机解决问题的过程
提
分
设
编
解
出
析
计
程
决
light.hideturtle()
light.screen.delay(0) # 禁用绘制过程的动画显示
# 红灯亮
light.color("red", "red")
light.begin_fill()
light.circle(20)
light.end_fill()
# 红灯保持显示
time.sleep(10)
编程调试 1、如何绘制两个内切圆?
2、如何利用程序goto语句绘制出竖向的两个圆
内切圆
import turtle #导入内置功能模块 #初始化红绿灯 light = turtle.Turtle() light.hideturtle() light.screen.delay(0) # 禁用绘制过程的动画显示 # 红灯亮 light.color("red","red") light.begin_fill() light.circle(70) light.end_fill()
【项目】编程控灯利出行 ——自助式人行过街红绿灯
通过编程,模拟实现“自助式人行过街红绿灯”的 效果,体验计算机求解问题的过程。
2.用计算机解决问题的过程
分析问题
寻找解决问题的 途径与方法
解决问题并 验证结果
1 明确目标·抽象建模 用计算机解决问题即让计算机按照程序执行指令。
分析问题
来自百度文库
信号灯 初始状态
子子功功能能1
……
子子功功能能n
……
问题功能分解示意图
针对各个特定功能分别进行详细的操作步骤设计 ——即算法设计
设计方案
原始问题:自助式人行过街红绿灯
主要功能1
主要功能2
主要功能3
主要功能m
设计方案
原始问题:自助式人行过街红绿灯
信号灯变化
红灯亮
红灯保持15 s
绿灯亮
绿灯保持20 s
2.计算机解决问题的过程
2.1解决问题的一般过程 和用计算机解决问题
举例移动应用程序
举例移动应用程序
功能
学习目标:
1、经历用计算机解决问题的基本过程, 并能应用于实际问题的解决。
2、体验编程解决问题的基本方法,提 高学习算法与程序的兴趣,发展计算 思维。
一、解决问题的一般过程
1、说出求解一元二次方程:X2+2X-15=0的过程
# 绿灯亮 light.color("green", "green") light.begin_fill() light.circle(20) light.end_fill()
竖向2个圆
import turtle #导入内置功能模块 #初始化红绿灯 light = turtle.Turtle() light.hideturtle() light.screen.delay(0) # 禁用绘制过程的动画显示 # 红灯亮 light.color("red", "red") light.begin_fill() light.circle(20) light.end_fill() # 红灯保持显示 light.goto(0,40) # 绿灯亮 light.color("green", "green") light.begin_fill() light.circle(20) light.end_fill()
2、用计算机解决问题
使用现有程序 根据需要自己编写程序,让计算机按照程序指令执行
分析问题
寻找解决问题的 途径与方法
解决问题并验证 结果
二、用计算机解决问题的过程
很多城市为了便于行人出行,会在 道路上配置一种“自助式人行过街红 绿灯”,如图所示。行人按下过街按 钮后开始计时,一定时间后信号灯变 为绿灯,此时便可通行。这种装置实 现了行人和交通信号灯之间的交互, 体现了人性化的交通管理,可在一定 程度上提高道路通行率
# 绿灯亮
light.color("green", "green")
light.begin_fill()
light.circle(20)
light.end_fill()
程序理解
1、 import turtle
2、 import time
导入内置功能模块
3、 #初始化红绿灯
4、 light = turtle.Turtle()
2、回忆上学路上交通状况如何,交通警察又是如 何指挥交通的呢?
交警
分析路口车辆、 行人状况
根据经验思考 解决方式
确定通行方案
3、归纳总结解决问题的一般过程
车辆、行人顺 利通行
分析问题
寻找解决问题的 途径与方法
解决问题并验证 结果
二、用计算机解决问题的过程
1、计算机的优势:
速度快、精度高、运算能力强、存储容量大、自动化程度高等
问
问
方
调
问
题
题
案
试
题
对比总结
人解决问题的一般过程
计算机编程解决问题的一般过程
1.分析问题 2.寻找解决问题的途径与方法 3.解决问题验证结果
抽象建模,描述问题 功能分解,设定解决方案
1.分析问题 2.设计方案
调试程序,分析、验证结果 3.编程调试
4.解决问题
小结
一、
二、python部分语句的功能
编程调试
课本44页实践活动 用Python语言模拟交通信号灯“红灯变绿灯”的过
程。
1、如果将红灯持续时间 变成30秒应如何修改程序? 2、如果想将灯的半径变大, 应如何修改程序?
import turtle
import time
#导入内置功能模块
#初始化红绿灯
light = turtle.Turtle()