返回

资料详情(天天资源网)

资料简介

走进算法 ——算法与算法描述 生活中处处有算法 烧水泡茶,它需要做4项工作,即洗好水壶(2分钟),洗好 茶杯(3分钟),准备茶叶(1分钟),烧开水(10分钟)。 1. 洗水壶,灌水烧水;水开后,再洗茶杯,准备茶叶,冲水泡茶。 2. 先洗水壶,洗茶杯,放茶叶,一切就绪,再烧水,水开后再泡茶。 3. 洗水壶,灌水烧水;烧水过程中,洗茶杯,放茶叶,水开后泡茶。 哪种方法好?为什么?算法有优劣之分,在生活和程序 设计中都要注意选择较好的算法。 什么是算法 算法:解决问题的方法和步骤。 有穷性:指算法必须能在执行有限个步骤之后终止 。 确切性:算法的每一步骤必须有确切的定义(无二义性)。“张三 对李四说他的孩子考上了大学”。 输入项: 一个算法有0个或多个输入。 输出项: 一个算法有一个或多个输出。没有输出的算法是毫无意义。 可行性:每个操作步骤都可以在有限时间内完成(也称之为有效性)。 算法的特点 编写一个包含有1000个有序数列(序号从1到1000)的数 列,查找数字的程序:当输入某个数字时,程序立刻显示出 该数字所在的序号。 随机查找 顺序查找 二分查找 思考问题: (1)哪一种算法比较好?为什么? (2)如何理解“算法的优劣直接影响所编程序 的质量,算法是程序的灵魂”这句话呢? 查数问题 计算出s=2+4+6…+100的值。 试设计出多种算法,并比较这些算法中哪算法更加简单与高效。 用自然语言描述算法。 练一练 写写看: “将a加b除以a减b的值赋给x 变量”写出x变量的赋值语句。 用自然语言描述。 流程图:几何图形来描述算法流程。 符 号 名 称 含 义 起止框 开始、结束 处理框 计算等处理 输入/输出 输入和输出内容 判断框 判断条件满足与否 流程线 程序的流向 算法如何描述 (1)自然语言。 (2)流程图。 (3)程序设计语言。 算法如何描述 例题:给定三角形的底和高,计算三角形的面积? 算法描述 自然语言: (1)输入三角形的底a和高h。 (2)判断a>0,h>0。 (3)计算面积公式s=a*h/2。 (4)输出面积s。 流程图 a = InputBox("输入长") h = InputBox("输入高") if (a>0) and (h>0) then s = a * h / 2 Print s Else Print “无解” End IfVB程序设计语言 输出无解 a>0,h>0 开始 输入底a高h 计算面积s=a*h/2 输出面积s 结束 Y N 1. 阅读流程图,说明该流程图描述的算法及功能。 练一练 开始 输入数a 输出a 结束 a=x Y N 生成随机数x a>x 输出“小了”输出“大了” Y N 练一练 2. 阅读流程图,说明该流程图描述的算法及功能。 开始 n=1,sum=0 n>10 输出 sum 结束 输入 a n n+1 sum sum+a yes NO 练一练 3. ax+b=0,一元一次方程求解的算法描述: 用自然语言、流程图描述 开始 输入a,b 输出x 结束 a0 Y N x=-b/a 输出无数个解 b=0 输出无解 Y N 拓展题 从键盘输入两个不同的数,然后显示大的数。请设计算法并画出流程图。 查看更多

Copyright 2004-2019 ttzyw.com All Rights Reserved 闽ICP备18023965号-4

天天资源网声明:本站点发布的文章作品均来自用户投稿或网络整理,部分作品未联系到知识产权人或未发现有相关的知识产权登记

全屏阅读
关闭