3.3.2计算机程序与程序设计语言课件2021-2022学年高中信息技术粤教版(2019)必修1数据与计算(21张PPT)

文档属性

名称 3.3.2计算机程序与程序设计语言课件2021-2022学年高中信息技术粤教版(2019)必修1数据与计算(21张PPT)
格式 pptx
文件大小 668.8KB
资源类型 教案
版本资源 粤教版(2019)
科目 信息技术(信息科技)
更新时间 2022-04-10 22:31:37

图片预览

文档简介

(共21张PPT)
信息技术 必修1 :数据与计算
第三章 算法基础
3.3 计算机程序与程序设计语言
第三章 算法基础
3.3 计算机程序与程序设计语言
【算法】就是用计算机求解某一问题的方法,是能被机械地执行的动作或指令的又穷集合。
算法的特征:
(1)有穷性
(2)确定性
(3)数据输入
(4)数据输出
(5)可行性
知识回顾
一、描述算法的常用方法
1.用自然语言描述算法
就是用人们日常所用的语言,如:汉语、英语等来描述算法。
第三章 算法基础
3.3 计算机程序与程序设计语言
知识回顾
一、描述算法的常用方法
2.用流程图描述算法
是用程序框图来描述算法的一种表示方法。使用流程图描述算法,让人感到算法的流程描述清晰简洁。流程图的基本图形及其功能如下表所示。
流程图的基本图形及其功能
第三章 算法基础
3.3 计算机程序与程序设计语言
知识回顾
第三章 算法基础
3.3 计算机程序与程序设计语言
2.用流程图描述算法
是用程序框图来描述算法的一种表示方法。使用流程图描述算法,让人感到算法的流程描述清晰简洁。流程图的基本图形及其功能如下表所示。
一、描述算法的常用方法
k=12x+8y+5z
k=100
z<=16
y<=10
x<=7
知识回顾
一、描述算法的常用方法
3.用伪代码描述算法
就是用介于自然语言和计算机语言之间的文字和符号来描述算法。
t=0
for x in range(1,8):
for y in range(1,11):
for z in range(1,17):
if x*12+y*8+z*5==100:
{t=t+1;
输出解的个数t和三个整数x,y,z}
第三章 算法基础
3.3 计算机程序与程序设计语言
知识回顾
算法描述的方法 优势 不足
自然语言表示法 用人们日常所用的语言,比较容易掌握。 当算法中含有多分支或循环操作较多时很难清晰地表示出来,由于自然语言的歧义性,容易导致算法执行的不确定性。
流程图表示法 用程序框图来描述,流程描述清晰简洁。 所占篇幅较大,由于允许使用流程线,过于灵活,不受约束。
伪代码表示法 用介于自然语言和计算机语言之间的文字和符号来描述,书写方便,格式紧凑,易于理解,便于向计算机程序设计语言过渡。 由于编程语言的种类繁多,伪代码的语句不容易规范,有时会产生误解。
三种算法描述方法的比较
第三章 算法基础
3.3 计算机程序与程序设计语言
知识回顾
二、三种基本控制结构
这三种基本控制结构的主要作用是:
(1)顺序结构表示程序中的各操作是按照它们出现的先后顺序执行的。
(2)选择结构表示程序的处理步骤出现了分支,它需要根据某一特定的条件选择其中的一个分支执行。选择结构有单选择、双选择和多选择三种形式。
(3)循环结构表示程序反复执行某个或某些操作,直到某条件为假(或为真)时才可终止循环。
第三章 算法基础
3.3 计算机程序与程序设计语言
知识回顾
图1 顺序结构 图2 选择结构 图3 循环结构
二、三种基本控制结构
使用三种基本控制结构的组合来描述算法,可以改善算法的清晰度,提高算法的可读性。
第三章 算法基础
3.3 计算机程序与程序设计语言
知识回顾
第三章 算法基础
3.3 计算机程序与程序设计语言
1.计算机程序
在《计算机软件保护条例》中这样定义计算机的“程序”:指为了得到某种结果而可以由计算机等具有信息处理能力的装置执行的代码化指令序列,或者可被自动转换成代码化指令序列的符号化指令序列或者符号化语句序列。简而言之,计算机程序就是指计算机可以识别运行的指令集合。
3.3.1
计算机程序
2.计算机程序运行
运算器
(内)存储器
控制器
输入设备
输出设备
数据流
控制流
程序
数据




响应
信号








响应
信号












【计算机程序设计语言】是指一组用来定义计算机程序的语法规则,通常简称为“编程语言”。
3.3.2
计算机程序设计语言
第三章 算法基础
3.3 计算机程序与程序设计语言
计算机程序设计语言的发展
机器语言
汇编语言
高级语言
1、第一代计算机语言;
2、是由“0”和“1”这样的二进制代码指令组来表示;
3、计算机直接接收和执行;
4、运算效率最高,却难以被人理解、设计繁重、难修改。
【计算机程序设计语言】是指一组用来定义计算机程序的语法规则,通常简称为“编程语言”。
3.3.2
计算机程序设计语言
第三章 算法基础
3.3 计算机程序与程序设计语言
计算机程序设计语言的发展
机器语言
汇编语言
高级语言
1、第二代计算机语言;
2、使用了类似英文缩略词且带有助记性符号的语言替代特定的指令;
3、需要一个专门的语言翻译器;
4、移植性差但运算效率高,程序精炼、质量高且易于理解,仍常用。
第三章 算法基础
3.3 计算机程序与程序设计语言
计算机程序设计语言的发展
机器语言
汇编语言
高级语言
3.3.2
计算机程序设计语言
【计算机程序设计语言】是指一组用来定义计算机程序的语法规则,通常简称为“编程语言”。
1、接近于数学语言或人的自然语言;
2、不再过度地倚赖某种特定的机器或环境;
3、必须经过编译程序或解释程序将其翻译成机器语言;
4、多种高级语言。
计算机程序设计语言的发展
机器语言
汇编语言
高级语言
【计算机程序设计语言】是指一组用来定义计算机程序的语法规则,通常简称为“编程语言”。
3.3.2
计算机程序设计语言
第三章 算法基础
3.3 计算机程序与程序设计语言
2019年7月20日IEEE Spectrum(《科技纵览》)发布了
第四届顶级编程语言交互排行榜前十位的高级语言
3.3.2
计算机程序设计语言
第三章 算法基础
3.3 计算机程序与程序设计语言
三代计算机语言的优势与不足
语言类型 是否翻译 (编译) 优势 不足
机器语言 否 能被计算机接受和执行,运算效率最高。 程序难以理解,程序设计任务繁重,移植性差。
汇编语言 是 针对计算机特定硬件而编制的汇编语言程序,比机器语言易于理解,效率仍十分高。 不能被计算机直接运行,移植性不好。
高级语言 是 接近于数学语言或人的自然语言,易于理解,移植性好。 不能被计算机直接运行。
3.3.2
计算机程序设计语言
第三章 算法基础
3.3 计算机程序与程序设计语言
3.3.2
计算机程序设计语言
第三章 算法基础
3.3 计算机程序与程序设计语言
【案例】求两个正整数的最大公约数
(一)欧几里得算法——辗转相除法
输入m n
如果m>n 则直接执行步骤3,否则互换值再执行步骤3
r = m % n
如果 r ==0 则 n 的值就是两个数的最大公约数
如果 r !=0 令m=n n=r 再重复步骤3
开始
输入m
m>n


输入n
r =m%n
r==0
结束


输出n的值
互换m,n
m=n
n=r
第三章 算法基础
3.3 计算机程序与程序设计语言
【案例】求两个正整数的最大公约数
(一)欧几里得算法——辗转相除法
开始
输入m
m>n


输入n
r =m%n
r==0
结束


输出n的值
互换m,n
m=n
n=r
3.3.2
计算机程序设计语言
第三章 算法基础
3.3 计算机程序与程序设计语言
【案例】求两个正整数的最大公约数
(二)穷举法
输入m n
如果m>n 则直接执行步骤3,否则互换值再执行步骤3
i = n
如果 m%i ==0 且 n%i ==0则 i 的值就是两个数的最大公约数
否则令i=i-1再重复步骤4
开始
输入m
m>n


输入n
i =n
m%i==0 且n%i==0
结束


输出i的值
互换m,n
i=i-1
3.3.2
计算机程序设计语言
第三章 算法基础
3.3 计算机程序与程序设计语言
【案例】求两个正整数的最大公约数
(二)穷举法
开始
输入m
m>n


输入n
i =n
m%i==0 且n%i==0
结束


输出i的值
互换m,n
i=i-1
3.3.2
计算机程序设计语言
高质量程序应具备以下条件:
1.便于检查、修正、移植和维护。
2.程序具有良好的结构,逻辑清晰、可读性强。
3.结果必须正确,且在精度和其他各方面均满足要求。
4.程序运行时间尽可能短,同时尽可能合理地使用内存。
第三章 算法基础
3.3 计算机程序与程序设计语言
3.3.2
计算机程序设计语言