内容正文:
第3章 算法的程序实现
浙教版信息技术(高中)
必修1 数据与计算
3.1 用计算机编程解决问题的一般过程
学习目标
1
2
3
了解计算机编程解决问题的一般过程。
掌握python语言的基本知识,体验程
序设计的基本流程。
能用程序实现简单算法,掌握程序调试
与运行的方法,感受算法的效率。
1
2
重点难点
重点:利用计算机编程解决问题的一般过程。
难点:抽象与建模。
课堂导入
计算机已成为人们解决问题的重要工具。例如,用Word解决文字处理的问题,用Excel解决一般的数据计算、统计的问题等。但由于现实问题的多样性,并不是所有的问题都可以用现成的计算机程序来解决。因此,针对这些问题,需要通过抽象与建模、设计算法、编写计算机程序来解决。
下面以编写计算机程序绘制一个正多边形为例,了解用计算机编程解决实际问题的一般过程。
1、抽象与建模
正多边形的各边边长相等,各内角度数也相等。因此,绘制一个正多边形,可以通过“画一条边,旋转一定角度后再画一条边”的重复操作来完成。例如,图3. 1. 1呈现的是绘制一个正六边形的过程。
图3.1.1 绘制正六边形的过程
绘制正多边形,除了要知道它的边数n和边长a, 关键是要计算出每次旋转的角度。因此,解决这个问题的计算模型可以表示如下:
假设正多边形的边数为n, 边长为a。
则内角度数d的值为:d= (n-2) x180+n。
每次旋转的角度为:180-d。
2、设计算法
基于问题的抽象与建模,绘制一个正多边形的算法可以做如下描述:
①输人要绘制的正多边形的边数n和边长a。
②计算正多边形的每个内角度数d, 其中d= (n-2) x180÷n。
③将以下过程重复执行n遍:画一条长度为a的线段,再将画笔方向向左(逆时针)旋转(180-d) 度。
3、编写程序
要让计算机按照预先设计的算法进行处理,需要将该算法用计算机程序设计语言描述,形成计算机程序。绘制正多边形的算法用Python语言描述如下:
import turtle
n=int (input ("请输入正多边形的边数n: ”) )
a=int (input ("请输入边长a: ”) )
d= (n-2) *180/n
t=turtle. Pen()
fo