内容正文:
第3章 算法的程序实现
浙教版 信息技术(高中)
必修1 数据与计算
3.3 简单算法及其程序实现
学习目标
1
2
3
解析算法及其程序实现。
枚举算法及其程序实现。
算法程序实现的综合应用。
1
2
重点难点
重点:算法程序实现的综合应用。
难点:算法程序实现的综合应用。
课堂导入
算法设计完成后,就可以用程序设计语言来描述算法,本节介绍如何使用python程序设计语言来描述一些简单算法。
3.3.1解析算法及其程序实现
答题卡填涂识别
(1)抽象与建模
灰度值=0.299x红色颜色分量+0.587x绿色颜色分量+0.114x蓝色颜色分量
(3)编写程序
(2)设计算法
①给定颜色初值:输入某像素在RGB颜色模式下的各颜色分量。
②转换颜色模式:将彩色(RGB颜色模式)值转化成灰度值。
③判定黑、白颜色:若灰度值小于132, 则判定为黑色;否则判定为白色。
3.3.2枚举算法及其程序实现
例如,求解某整数x的所有因子(不包含x本身)。
判定某信息点是否被填涂,还需要对该信息点区域中的所有像素进行判断。
(1)抽象与建模
(2)设计算法
(3)编写程序
①逐一列举某信息点中的各个像素。
②如果当前枚举的像素是黑色,那么黑色像素的数量加1。
③输出该信息点中黑色像素总数。
count=Σsi ,si={
n
i=1
0 (Gray_scale [i] ≥132
1 (Gray_scale [i] <132)
对300个像素的颜色数据逐一进行列举并判断。
fname=input ("请输入文件名称:")
f=open (fname, "r+")
count=0
line=f.readline0( )
while line:
line=line.split()
R, G, B=map (int,line)
if 0. 299*R+0. 587*G+0. 144*B <132:
count=count+1
line=f.readline()
if count> =300*0. 64:
f.write ("
已填涂!")
else:
f.write ("
未填涂!”)
f.close()
拓展链接:
Python的文件读写操作
读写文件是计算机中常见的输