2.1.1 计算机解决问题的过程 课件(共27张PPT)-2022—2023学年高中信息技术教科版(2019)必修1

资源下载
  1. 二一教育资源

2.1.1 计算机解决问题的过程 课件(共27张PPT)-2022—2023学年高中信息技术教科版(2019)必修1

资源简介

(共27张PPT)
第二单元 编程计算
2.1.1 计算机解决问题的过程
人工计算
心算
笔算
口算
一、计算的方式
计算机计算
自动工具计算
编程计算
使用现有的软件进行计算
自己编写程序进行计算
数据在运算符的操作下,按规则进行的数据变换,这是简单计算中的算数计算
通过建立分析模型和设计有效的步骤、方法,利用自动计算工具来进行规律预测和发现,这是计算机领域的计算
《孙子算经》——鸡兔同笼
今有鸡兔同笼,
上有三十五头;
下有九十四足,
问鸡兔各几何?
二、鸡兔同笼问题
有哪些方法可以解决鸡兔同笼问题?
1、人工计算方式解决“鸡兔同笼”问题
今有鸡兔同笼,上有三十五头;下有九十四足,问鸡兔各几何?
方法一:方程法
思路
通过方程式求解
设兔的只数为x,鸡的只数为y。
关系式:
①兔的只数+鸡的只数=35
②兔的脚数=兔的只数x4
③鸡的脚数=鸡的只数x2
④兔的脚数+鸡的脚数=94
步骤
根据题意可列方程组:
x+y=35 ①
4x+2y=94 ②
解得:x=12 y=23
二、鸡兔同笼问题
今有鸡兔同笼,上有三十五头;下有九十四足,问鸡兔各几何?
方法二:抬脚法(假设法)
思路
假如鸡与兔子都抬起两只脚,剩下的脚全是兔子的,用剩下的脚数量除以2就得到了兔子的数量。
步骤
①假设鸡兔都抬两只脚,抬起脚的总数为:35x2=70(只)
②地上还剩的脚数:94-70=24(只)
③地上的脚全是兔子的,用剩余数除以2即兔子的数量:46/2=12(只)
④鸡的数量:35-12=23(只)
1、人工计算方式解决“鸡兔同笼”问题
二、鸡兔同笼问题
今有鸡兔同笼,上有三十五头;下有九十四足,问鸡兔各几何?
方法三:列表法
思路
借助表格,把鸡和兔子所有的情况都列举出来,筛选符合条件的即为鸡和兔子的数量
“鸡兔同笼”问题(35头94脚) 兔的 只数 鸡的 只数 兔脚 总数 鸡脚 总数 共有脚数
1
2
……
34
2、电子表格软件方式解决“鸡兔同笼”问题
二、鸡兔同笼问题
35头,118脚,鸡兔各几何?
72头,168脚,鸡兔各几何?
200头,620脚,鸡兔各几何?
思考


n头,m脚,鸡兔各几何?
二、鸡兔同笼问题
此时人工和电子表格的计算方式还适合解决问题吗?
3、编程方式解决“鸡兔同笼”问题
二、鸡兔同笼问题
二、鸡兔同笼问题
三、计算机解决问题的过程
用编程解决鸡兔同笼问题需要几步?
分析问题
设计算法
编写程序
调试与维护
比较不同计算方式的特点
计算方式 考察的方面 使用成本 使用方便性 计算速度 适用情境
人工计算 低 易 慢 数据量、计算量比较少的问题情境
自动工具计算 高 易 较快 现有的软件可以解决当前的问题需求
编程计算 高 难 非常快 数据量、计算量比较大的问题情境
5. 关于人工计算、自动计算工具计算和编程计算三种计算方式,下列说法正确的是( )
A. 对于简单的计算问题,人工计算的使用成本是三中计算方式中最低的
B. 对于复杂的就散问题,通常不采用人工计算来解决
C. 依据实情,灵活运用三种计算方式将有助于我们提高数据计算的效率
D. 由于计算机的日益普及,编程解决计算问题是最方便的
ABC
习题
比较思想
print('这是一个有关鸡兔同笼问题的程序')
heads=int(input('请输入总的头数:'))
legs=int(input('请输入总的脚数:'))
for tu in range(1,heads-1):
leg=4*tu+2*(heads-tu)
if leg==legs:
print('兔子有:',tu,'头')
print('鸡有:',int(heads-tu),'头')
input("运行完毕,请按回车键退出...")
print('这是一个有关鸡兔同笼问题的程序')
heads=float(input('请输入总的头数:'))
legs=float(input('请输入总的脚数:'))
tu=int((legs-heads*2)/(4-2))
print('兔子有:',tu,'头')
print('鸡有:',int(heads-tu),'头')
input("运行完毕,请按回车键退出...")
抬脚法
列表法
四、算法
算法是解决问题的方法和步骤。
1、什么是算法?
确定要购买的物品
挑选、比较
收银台付款
四、算法
2、算法的描述
用自然语言描述
01
用流程图描述
02
用程序设计语言描述
03
四、算法
2.1 使用自然语言描述算法
自然语言是指人们日常生活中使用的语言,汉语、英语、德语等都是自然语言。
1. 显示程序描述
2. 显示输入总头数及总脚数的提示
3. 输入总头数和总脚数的数据
4. 计算兔子和鸡的数量
5. 输出兔子和鸡的总数
6. 程序结束
自然语言描述算法简单其通俗易懂,但容易产生歧义
四、算法
2.2 使用流程图描述算法
流程图也称为程序框图,是算法的一种图形化表示方法。
与使用自然语言描述算法相比,流程图描述算法形象、直观、更容易理解。
四、算法
2.2 使用流程图描述算法
开始
输入总头数和总脚数的数据
输出兔子和鸡的总数
计算兔子和鸡的数量
结束
显示程序描述、输入总头以及总脚数的提示
四、算法
2.3 使用程序设计语言描述算法
开始
显示程序描述、输入总头以及总脚数的提示
输入总头数和总脚数的数据
输出兔子和鸡的总数
计算兔子和鸡的数量
结束
print('这是一个有关鸡兔同笼问题的程序')
heads=float(input('请输入总的头数:'))
legs=float(input('请输入总的脚数:'))
tu=int((legs-heads*2)/(4-2))
print('兔子有:',tu,'头')
print('鸡有:',int(heads-tu),'头')
input("运行完毕,请按回车键退出...")
四、算法
五、算法的基本结构
A
B
条件?
A
B


A
条件?


3 循环结构
1 顺序结构
2 分支(选择)结构
1、顺序结构
顺序结构是最简单的程序结构,它的执行顺序是自上而下,依次执行。
A
B
输入数字a
输入数字b
输出a+b
开始
结束
例题
输入数字a,b,计算两个数字之和并输出,用算法怎么表示这个过程?
五、算法的基本结构
2、分支结构/选择结构
用于根据给定的条件进行判断的结构。通过判断条件是否成立,来决定执行哪个分支,从而控制程序的流程。
输入正整数a
是否是3的倍数
是3的倍数
开始
结束
例题
输入一个正整数a,判断该数字是否为3的倍数,如果是则输出”是3的倍数“,否则输出”不是3的倍数“
条件?
A
B


不是3的倍数


五、算法的基本结构
3、循环结构
循环结构是一种重复某一部分操作的结构。在条件控制下,某些操作步骤需要重复执行(循环),在不满足重复处理的条件时,循环结束。
跑一圈
是否跑满5圈
开始
结束
例题
在某次跑步测试中,要求学生围着操场跑5圈,每跑一圈判断一下是否跑完5圈,直到跑完5圈结束跑步。用算法怎么表示这个过程


A
条件?


五、算法的基本结构
三种结构共同特点
只有一个入口。
只有一个出口。
结构的每一部分都有机会被执行到。即每一个框都有一条从入口到出口的路径经过它。
结构内不存在“死循环”(无终止的循环)
五、算法的基本结构
A
B
条件?
A
B


六、程序设计语言的发展
机器语言
二进制指令 16位
1011010001111010
汇编语言
英文助记符
ADD A,B
符号汇编语言/汇编语言
计算机低级语言
高级语言
英文单词
printf(“世界,你好!\n”);
源程序 目标程序
可读性更强,便于修改、维护
编译软件
谢谢聆听

展开更多......

收起↑

资源预览