浙教版 信息技术 必修1 3.1用计算机编程解决问题的一般过程 课件(17张PPT)

文档属性

名称 浙教版 信息技术 必修1 3.1用计算机编程解决问题的一般过程 课件(17张PPT)
格式 pptx
文件大小 4.7MB
资源类型 试卷
版本资源 浙教版(2019)
科目 信息技术(信息科技)
更新时间 2021-03-01 13:56:28

图片预览

文档简介

第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()
for i in range (n) : #重复执行n遍
t.forward (a) #向前绘制长度为a的线段
t.left (180-d) #向左旋转(180-d) 度
程序运行截图:
4、调试运行程序
通过运行程序,计算机会自动执行程序中的命令。但是,在将算法进行程序实现时,可能会因为录入错误、语法错误、逻辑错误等原因,导致程序不能正常运行或输出错误的结果。此时,需要对程序进行调试,以便发现错误并进行修正。例如、字母大小写的疏忽可能直接决定程序能否正常运行,程序中参数的调整可能影响输出图形的形状。
问题与讨论:
在用计算机编程解决问题的过程中,算法与程序两者之间的关系如何?
算法
程序是指以某些程序设计语言编写。
程序员很熟练的掌握了程序设计语言的语法,并基于算法进行程序设计。
算法是指解题方案描述,是一系列解决问题的指令,算法代表着用系统的方法描述解决问题的策略机制。
算法是程序的核心内容,一个需要实现特定功能的程序,实现它的算法可以有多种,算法的优劣决定着程序的好坏。
程序
思考与练习:
1. 请描述用计算机编程验证“哥德巴赫猜想”的一般过程。
第一步 设一上限数M, 验证 从4到M的所有偶数是否能被 分解为两个素数之和。
1.、定义一个变量X, 初值为4.
2. 每次令其加2, 并验证 X 能否 被分解为两个素数之和,直到X不小于M为止。
第二步 如何验证X是否能被分解为两个素数之和。
1. 从P=2开始;
2. 判别X-P是否仍为素数:
3. 若是,打印该偶数的分解式。
4. 否则,换更大的素数,再继续执行2.
如此循环,直到用于检测的素数大 X/2 且X与其之差仍不是素数,则打印“哥德巴赫猜想”不成立。
第三步 生成下一个素数。
(1) 当前素数P加1
(2) 判别P是否是素数;
(3) 若是素数,返回P;
(4) 否则,P加1, 继续执行(2)
本参考答案来自网络,仅供参考。
拓展:哥德巴赫猜想是什么?
世界近代三大数学难题之一。哥德巴赫是德国一位中学教师,也是一位数学家,生于1690年,1725年当选为俄国彼得堡科学院院士。1742年,哥德巴赫在教学中发现,每个不小于6的偶数都是两个素数(只能被和它本身整除的数)之和。如6=3+3,12=5+7等。
?? 公元1742年6月7日哥德巴赫(Goldbach)写信给大数学家欧拉(Euler),提出了以下的猜想:
(a) 任何一个>=6之偶数,都可以表示成两个奇质数之和。
(b) 任何一个>=9之奇数,都可以表示成三个奇质数之和。
?? 这就是着名的哥德巴赫猜想。
欧拉在给他的回信中说,他相信这个猜想是正确的,但他不能证明。叙述如此简单的问题,连欧拉这样首屈一指的数学家都不能证明,这个猜想便引起了许多数学家的注意。从提出这个猜想至今,许多数学家都不断努力想攻克它,但都没有成功。??当然曾经有人作了些具体的验证工作,例如: 6 = 3 + 3, 8 = 3 + 5, 10 = 5 + 5 = 3 + 7, 12 = 5 + 7, 14 = 7 + 7 = 3 + 11,16 = 5 + 11, 18 = 5 + 13, 等等。有人对33×108以内且大过6之偶数一一进行验算,哥德巴赫猜想(a)都成立。但严格的数学证明尚待数学家的努力。
??到了20世纪20年代,才有人开始向它靠近。1920年、挪威数学家布爵用一种古老的筛选法证明,得出了一个结论:每一个比大的偶数都可以表示为(99)。这种缩小包围圈的办法很管用,科学家们于是从(9十9)开始,逐步减少每个数里所含质数因子的个数,直到最后使每个数里都是一个质数为止,这样就证明了“哥德巴赫”。
?? 目前最佳的结果是中国数学家陈景润於1966年证明的,称为“陈氏定理“ 任何充份大的偶数都是一个质数与一个自然数之和,而後者仅仅是两个质数的乘积。" 通常都简称这个结果为大偶数可表示为 "1 + 2 "的形式。
谢 谢!
Thanks!
https://www.21cnjy.com/help/help_extract.php