一、 什么是算法(5个特性)
算法就是 解决问题的方法和步骤。
算法为解决一个具体问题而采取的确定的 有限的 执行步骤 ,仅指 计算机 能执行的算法。
算法是程序设计的灵魂和核心。
- 1. 算法解决什么问题
算法的五大特性:
(1) 有穷性 算法在执行有限的步骤后自动结束、不会出现无限循环。
(2) 确定性 算法的每一步骤都具有确定的含义,不会出现二义性。
(3) 零个或多个输入 算法可以具有零个或多个输入。
(4) 一个或多个输出 算法至少有一个或多个输出,算法是一定需要输出的。
输出必须要有 ,输入可有可无!!
(5) 可行性。算法的每一步都必须是可行的,每一步都能够通过执行有限次数完成。
二、 算法的三大结构(3个结构)
程序采用自顶向下,逐步求精的方法来完善算法,
- 1. 顺序结构
顺序结构就是按照书写的顺序依次执行,不允许跨越任何一条语句。
- 2. 选择结构
选择结构又称为分支结构,
选择结构就是 根据条件判断是否成立,执行不同的语句段。
- 3. 循环结构
循环结构在有些书籍上也称为重复结构,即反复执行某一部分的操作
三、 算法的表达方式(4种)
- 1. 自然语言描述
自然语言就是人们日常使用的语言,可以是汉语、英语,或其他语言。
用自然语言通俗易懂,但文字冗长,容易出现歧义。
- 2. 流程图描述
流程图是用一些图框来表示各种操作。是算法的图形化表示。
用图形表示算法,直观形象,易于理解。
- 3. NS结构化流程图描述 (不做NS里优缺点考核)
它的最重要的特点就是 完全取消了流程线,这样迫使算法只能从上到下顺序执行,从而避免了算法流程的任意转向,保证了程序的质量。
NS图优点就是形象、直观、节省篇幅,尤其适合于结构化程序的设计。
- 4. 伪码描述 (不做伪码里优缺点考核)
伪码是指介于自然语言和计算机语言之间的一种代码。
它的最大优点是,与计算机语言比较接近,易于转换为计算机程序。
书写无固定格式和规范,比较灵活。
四、 顺序结构的三大构成
顺序结构是按照书写顺序一条一条向下执行,在顺序结构程序中主要包含三类语句,
输入语句赋值语句,及输出语句。
- 1. 赋值语句
赋值语句 是由赋值表达式 加上一个分号构成。 语句都是以分号结尾的。
- 2. 输入语句输出语句
(1)从 计算机 向 外部输出设备 输出数据 称为输出,
从 输入设备 向 计算机 输入数据 称为输入。
(2)C语言本身不提供输入输出语句,输入输出操作是由C函数库中的函数实现的。
(3)一个预编译命令 #include
要用到“stdio.h”文件中提供的信息。文件后缀中的“h”是head的缩写,
#include命令都是放在程序的开头,因此这类文件被称为“头文件”。
- 3. 顺序结构的逻辑先后
设计出正确的算法 是编写正确的计算机程序的前提条件
算法设计—程序的灵魂和核心、
数据结构—程序的肉体。
面向过程的程序本质公式:算法+数据结构=程序。
数据结构指定义待操作数据在计算机 内存中是如何存储和组织的。
选择恰当的数据结构可以提高程序的运行或存储效率。
五、 Visio软件的安装及应用
Office Visio是微软公司推出一款便于IT和商务专业人员就 复杂信息、系统和流程进行可视化处理、分析和交流的软件
- 1. 常用两种线的画法
第一类:动态连接线(这条线只能以直角形式进行弯曲)
第二类:直线-曲线连接线该线只能以度角进行弯曲
- 2. 箭头的选择:一般默认为向下箭头,当然也可以进行选择(如图4)
- 3. 文字的注释:线上写文字一般双击左键进行编辑文字即可。
- 4. 画流程图要遵循流程图规范要求:
(1)各种框必须应用正确
(2)箭头方向正确
(3)文字表述正确
(4)解决问题步骤先后顺序正确
六、 基于流程图仿真的可视化----RAPTOR之让你的流程图飞起来
Raptor是用于 有序 推理的 快速算法 原型工具
下面我们来先说下Raptor的功能及介绍如下:
是一种基于流程图 仿真的 可视化的 程序设计环境
在 最大限度地减少语法要求
帮助你 编写正确的程序指令程序-流程图
逐个执行图形符号
跟踪指令流执行过程
Raptor是一个有向图,也就是必须有开始(Start)和结束(End)。
Raptor软件中 所有的操作 是在main窗口下 start 和 end 中间进行。
共有6种符号,
一个是方框 赋值 (Assignment),
一个是 调用 (Call),
输入 (Input)、
输出 (Output)、
选择 (Selection)
循环 (Loop)。
各个小窗口的功能如下所示:
RAPTOR设计的程序和算法可以直接转换成为C++、C#、Java等高级程序语言,
真的可视化----RAPTOR之再飞一会
1、Raptor中如果要想删除画多了的框,可以在选中的基础上,按“delete”删除。
2、注意在输入输出 提示内容时 ,必须用英文(也就是半角)符号双引号把提示内容括起来。
3、变量是相对于常量而言的,在程序执行过程中其值可以改变的量称为变量。。
4、注:在程序设计中我们用 * 号来代表算术运算中的乘法
5、Set 指的是我们要设置赋值给哪个变量
To 指的是给变量赋的值是谁
6、函数:完成特定功用的模块
求平方根函数sqrt()
常用函数有:
max( ) 最大值函数
min( ) 最小值函数
random 随机值函数
abs( ) 绝对值函数
sqrt()求平方根函数