第2章 算法可视化工具
2.1 Raptor的基础知识
2.1.1 Raptor的概念与特点
Raptor(Rapid Algorithmic Prototyping Tool for Ordered Reasoning,用于有序推理的快速算法原型工具)是一种基于流程图的可视化的程序环境,可为程序和算法设计的教学等提供实验环境。
流程图是一系列相互连接的图形符号的集合,其中每个符号代表要执行的特定类型的指令。Raptor允许学生用连接基本流程图符号的方式来创建算法,然后可在其环境下直接调试和运行算法,包括单步执行或连续执行的模式。该环境可直观地显示当前执行符号所在的位置,以及所有变量的内容。此外,Raptor提供了一个简单图形库。学生使用可视化创建算法,所求解的问题就是可视化的。由于流程图是计算机基础课程中的基础概念,所以一旦开始使用Raptor解决问题,这些原本抽象的算法问题将会变得清晰。
Raptor的主要特点为:
(1)规则简单,容易掌握。
(2)在 Raptor 中,程序就是流程图,可逐个执行图形符号,以便帮助用户跟踪指令流执行过程。
(3)用Raptor可进行算法设计和验证,从而使初学者有可能理解和真正掌握“计算思维”。
(4)使用Raptor设计的程序和算法可直接转换成为C++,C#,Java等高级程序语言。
2.1.2 Raptor程序
Raptor程序是一组连接符号,表示要执行的一系列动作。Raptor程序执行时,从Start符号起步,按照箭头所指方向执行程序,直到End符号时停止,如图2-1所示。在开始和结束符之间插入一系列Raptor符号,就可创建有意义的Raptor程序了。
图2-1 工作界面
一个程序通常由两要素组成,即基本运算和控制结构。基本运算包括以下内容。
算术运算:+、-、*、\、Mod、^等。
关系运算:>、>=、<、<=、=、<>。
逻辑运算:and、or、not等。
数据传输:“赋值”“输入”和“输出”等。
程序的控制结构是程序中各操作之间的操作顺序和结构关系,一个程序一般都可用顺序、选择和循环三种基本控制结构组合而成。如图2-1所示,Raptor有6种基本符号,即赋值、调用、输入、输出、选择、循环。每个符号代表一个独特的指令类型。
根据程序构成要素,Raptor的符号分为两大类。①基本符号:赋值、调用、输入和输出符号;②表示控制结构的符号:选择符号和循环符号。详见表2-1。
表2-1 四种基本符号/语句