跳转到内容

A-level 计算机/CIE/基础问题解决和编程技能/算法设计和问题解决

来自 Wikibooks,为开放世界提供开放书籍
规范链接

算法

  • 理解算法是通过一系列定义步骤来解决问题
  • 为问题使用的数据表示使用合适的标识符名称
    • 使用标识符表来概括标识符名称
  • 理解许多算法使用赋值、顺序、选择和重复这四种基本构造
  • 理解简单算法包含输入、处理、输出在各个阶段
  • 使用以下方法记录简单算法
    • 结构化英语
    • 伪代码(在考试试卷中,任何给定的伪代码将使用 Courier New 字体呈现)
    • 程序流程图
  • 使用逐步细化过程将算法表达到可编程的细节级别
  • 将问题分解成子任务,从而引出程序模块(过程/函数)的概念
  • 理解为什么使用逻辑语句来定义算法解决方案的一部分
  • 使用逻辑语句来定义算法解决方案的一部分

结构图

  • 使用结构图来表达算法设计中各个模块/过程/函数的输入和输出
  • 描述结构图的目的
  • 为给定问题构建结构图
  • 从结构图中推导出等效的伪代码

纠正性维护

  • 通过以下方式进行白盒测试
    • 选择合适的数据
    • 使用跟踪表
  • 通过使用已完成的跟踪表来识别算法中的任何错误
  • 如果需要,修改算法

适应性维护

  • 根据规范变更修改算法和数据结构
  • 分析现有程序并进行修改以增强功能

结构图

[编辑 | 编辑源代码]
结构图可以映射复杂任务的结构和数据流

软件工程中的结构图是显示系统分解成其最低可管理部分的图表。它们用于结构化编程,将程序模块排列成树状结构。每个模块由一个框表示,该框包含模块的名称。树结构可视化模块之间的关系,显示使用箭头在模块之间传输数据。结构图是自顶向下设计的示例,其中问题(程序)被分解成其组成部分。树显示模块之间的关系,显示模型之间的数据传输。

符号 名称 含义
模块
名称
过程 每个框表示一个编程模块,这可能是一个计算一些数字的平均值或打印一些工资单的东西
数据对 从一个模块传递到另一个模块需要处理的数据。
标志 [扩展 - 您不需要在考试中知道这一点] 检查发送到进程以停止或启动进程的数据。例如,当读取的文件结束时,或者一个标志来说明发送的数据是否为正确的格式
结构图中选择的表示

结构图中的选择由菱形符号确定。这意味着将检查一个条件,并且根据结果,将执行不同的模块。

左侧代码的结构图

使用半圆形箭头,我们可以在结构图中表示迭代。

华夏公益教科书