算法与程序设计―算法概述

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

算法与程序设计第一章计算机和算法–1.1计算机解决问题的一般过程–1.2算法的概念–1.3算法的表示方法–1.4程序设计基础第二章基本算法实例及其实现–2.1解析算法–2.2枚举算法–2.3排序–2.4查找算法与程序设计——计算机和算法计算机系统硬件系统操作系统语言处理程序数据库理系统软件系统系统软件应用软件办公软件、网络应用软件、管理信息系统★软件的重要组成部分是:程序软件:解决计算机管理和各种应用问题所编写的各种程序以及与此相关的文档资料。程序:是指示计算机如何去解决问题或完成任务的一组可执行的指令。指令:指用来规定计算机操作的命令。分为:输入输出指令、数据处理指令、数据传送指令、程序控制指令。想一想:为什么要使用软件?程序的实现要经历哪些过程?1.1计算机和算法思考:为什么用电脑解决问题要设计算法?人脑解决问题的一般过程1.分析问题2.根据已有知识、经验进行判断、推理3.尝试按一定的方法和步骤去解决使用电脑解决问题的一般过程1.分析问题2.设计算法(设计出解决某一问题的有限个求解步骤)3.编写程序4.运行程序1.2算法的概念算法是在有限步骤内求解某一问题所使用的具有精确定义的一系列操作规则。简而言之,算法是指解决问题的具体方法和步骤。一个完整的算法有三个部分:输入、处理、输出。算法的特征有穷性–一个算法总是在执行了有穷步的运算后终止。确定性–算法的每一种运算必须有确定的意义,该种运算应执行何种动作应无二义性,目的明确。可行性–要求算法中有待实现的步骤都要能够实际做到的,而且在有限的时间内完成。有0个或多个输入–在算法运算开始之前给出算法所需数据的初值,就是要计算机处理的数据“告诉”计算机有一个或多个输出–计算机是百分百听话的,若不通知它将结果告诉用户,它是不会告诉你结果的,作为算法运算的结果,一个或多个。练一练根据完整算法有三部分(包括:输入、处理、输出)的要求,写出下列问题的算法:1.输入矩形的长和宽,求矩形的面积。–分析与提示:如果你的程序只能计算如长为5、宽为4的矩形面积,那么这个程序也就没什么实用性。所以,长和宽应该是可变的量(变量:是计算过程中要用的数据存储单元。记录矩形的长、宽、面积可以使用三个变量,如a、b、S。2.输入三角形的三条边长,求三角形的面积。–面积计算公式:其中,a,b,c是三角形的三条边长,p=(a+b+c)/2。s=sqrt(p*(p-a)*(p-c)*(p-b)),计算一个数的平方根可用函数sqrt。1输入边长a的值2输入边长b的值3输入边长c的值4如果a+bc,转到5;反之,转115如果b+ca,转到6;反之,转116如果c+ab,转到7;反之,转117p←(a+b+c)/28s←sqrt(p×(p-a)×(p-b)×(p-c))9输出s的值10结束11显示“不能构成三角形!”,转112变量a13变量b14变量c15变量p16变量s开始结束输入a,b,c的值p←(a+b+c)/2s←sqrt(p*(p-a)*(p-b)*(p-c))输出Sa+bcb+caa+cb1输入边长a的值2输入边长b的值3输入边长c的值4如果a+bc,转到5;反之,转115如果b+ca,转到6;反之,转116如果c+ab,转到7;反之,转117p←(a+b+c)/28s←sqrt(p×(p-a)×(p-b)×(p-c))9输出s的值10结束11显示“不能构成三角形!”,转112变量a13变量b14变量c15变量p16变量s1.3算法的表示1.3.1变量、常量及其用途1.常量:不可以改变的量。2.变量:可以改变的量。–一般以字母开头,可长可短,中间没有空格–便于记忆–取之不尽,用之不竭3.★程序中的变量与常量是计算过程中要用的数据的存储单元,因此是计算机将数据存放到存储单元中,或者称为给变量赋值。两种特殊的变量及其使用1.计数器(counter):记录某种事件发生次数的变量2.累加器(sum):存放数据之和的变量★使用前,初始置设为0赋值语句counter←counter+1sum←sum+a1.3.2运算符及运算次序1.算术运算符:+、-、*、/、∧(指数)、\(整除:即取商的整数部分)、mod(取模:即取余数)2.字符运算符&或+。3.关系运算符、、=、=、=、(不等于)关系运算的结果是一个逻辑值:Ture(真)或False(假)4.逻辑运算符and、or、not。5.优先级:算术运算与字符运算最优先,关系运算次之,最后为逻辑运算,括号可以改变次序。字符串运算符:+、&字符串运算符:+、&,功能是两个字符串的连接+、&的区别:+:两边若都为字符串,则为连接运算;两边若都为数值型,则为算术加法运算;两边若一个为字符串,另一个为数值,则将出错;&:两边不管是字符型还是数值型,总是以字符型连接使用&时,左右两边需空一格逻辑运算符1.逻辑运算符:2.逻辑运算的结果是逻辑值true或false3.逻辑运算符运算次序:notandorABAandBAorBTTTTTFFTFTFTFFFFAnotATFFTback1.3.3表达式1.表达式:指用运算符将常量、变量连接起来有意义的式子。2.表达式的类型:–算术表达式。其结果是一个具体的数值。–字符表达式。其结果是一个字符串。–关系表达式。结果是一个逻辑值。–逻辑表达式。结果是一个逻辑值。练习:求下列表达式的值假设:a=1,b=2,c=3,那么1.a+b*c2.cmodb+a3.ab-a4.aband(c-a)/205.a+bcorb+caandc+ab练习:将下列描述用赋值表达式表示(1)设圆的半径为5cm,将它存放在变量r中,将圆周长赋值给变量c,面积赋值给变量s。(2)假设一元二次方程的系数存放在变量a,b,c,将判别式赋给变量d。(3)将“信息科技”字符信息赋值给变量title。(4)某商店一商品价格存放在变量price中,将price打对折,赋值给变量price中。作业根据完整算法有三部分(包括:输入、处理、输出)的要求,写出下列问题的算法:1.某学校需购买n套学生课桌椅,已知每套单价200元,另加总价的3.5%的送货费,请计算学校应付款是多少?(单价用变量j表示,套数用n表示,总价用m表示,应付款用p表示)2.输入任意一个三位正整数n,输出这个三位数各位数字之和total。例如:输入456,输出结果为15。1.3算法的表示方法自然语言流程图伪代码(介于自然语言和计算机程序语言之间的一种算法描述)算法的流程图表示处理框输入输出框判断框连接框流程线开始结束符常用符号有:画出该问题的流程图:1.输入三角形的三条边长,求三角形的面积。–面积计算公式:其中,a,b,c是三角形的三条边长,p=(a+b+c)/2。s=sqrt(p*(p-a)*(p-c)*(p-b)),计算一个数的平方根可用函数sqrt。(该函数是数学库函数,需要在程序开头加上#include“math.h”)练习

1 / 21
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功