跳到正文
IGCSE·Tuition
计算机科学 · 主题

解题说明

代码你在脑子里也许能改对,但纸上的说明太单薄,分数还是会丢。

本页内容
  1. 你需要先具备什么基础?
  2. 一个示范例子
  3. 学习课程的顺序是什么?
  4. 这个主题有哪些常见陷阱?
  5. 怎样使用练习?

这个单元讲的是解题中“写”的部分。考试题常要求你说明某个变量(variable)的用途、为一个测试提供理由、描述如何修正错误,或者解释追踪表(trace)为什么得出某个输出。知道答案只是一半,另一半是把它写得让阅卷员能逐点给分。

请到剑桥官方的 Computer Science 0478 课程大纲页面,核对你考试年份的内容要点和指令词。我们的计算机科学学习指南会告诉你这个单元在整个科目中的位置。

你需要先具备什么基础?

你需要能读懂含有赋值、IF、FOR 和 WHILE 的简短伪代码,并能用追踪表逐步跟踪。如果这部分还不稳,请先看适用大纲的伪代码和算法设计。测试的概念见验证、核实与测试。

一个示范例子

下面是一个短算法,以及题目可能要求的四种说明。

Total ← 0
FOR Index ← 1 TO 3
   INPUT Number
   Total ← Total + Number
NEXT Index
Average ← Total / 2
OUTPUT Average

变量的作用。 Total 保存到目前为止输入的数字之和。它从 0 开始,因为还没有加过任何数。

有依据的测试。 要求:输出三个数字的平均值。测试数据 4、6、8 很有用,因为预期的平均值 6 很容易手算。

对修正的描述。 第 6 行除以 2,但输入的是三个数字。把除数改成 3。

追踪表与输出的联系。 输入 4、6、8 时,Total 依次是 4、10、18。然后输出 18 / 2 = 9,与预期的 6 不符。这个差异就暴露了错误。

请注意,每个答案都提到某一行、某个数值或某条要求,而不是只说“它错了”。

学习课程的顺序是什么?

  1. 说明变量的用途:写出变量保存什么、为什么需要,而不是重复它的名字。
  2. 用要求来说明测试用例的理由:把每个测试值和它检验的规则联系起来。
  3. 描述修正,而不只是写出代码:用文字指出哪一行、什么错误、怎么改。
  4. 把追踪表和最终输出联系起来:说明答案来自追踪表的哪一行。
  5. 准备最小可重现的学习例子:把问题缩小到仍会出错的最小情形。

然后完成解题说明练习。受限伪代码追踪训练器和安全的 Python 推理沙盒可以帮你检查小型追踪,错题记录与重测队列则帮你记录反复出现的错误。

这个主题有哪些常见陷阱?

  • 用变量名来解释变量(“Total 保存 total”)。
  • 只写测试数据,不说每个值检验什么。
  • 把修正写成“让它变对”,却没有指出行或具体改动。
  • 把追踪表里的最后一个值当作输出,而输出其实是另一个变量。
  • 把出错的程序缩得太小,错误反而消失。

怎样使用练习?

先用完整句子写出你自己的说明,再打开答案。对照示范答案,标出你漏掉的必要得分点:指出的行、数值、原因或要求。“答错了怎么办”部分会把每类错误指向对应的课程。

想让人帮忙看你写的说明的学生,可以咨询我们的线上一对一计算机科学补习。

资料来源

  1. Cambridge IGCSE Computer Science 0478 syllabus page

更新于:

下一步

如果你能发现错误,却很难把原因写成清楚的句子,一对一的老师可以和你逐行阅读、打磨你写的说明。

一小时付费试听课,按所安排老师确认的收费,RM80 起。 其他费用、时间安排及后续课程,在试听课后由家长与老师直接确认。

补习由家长或监护人安排。用 WhatsApp 把这页发给他们,他们就可以替你咨询。

是家长或监护人?在这里咨询

已通过我们的服务帮助 9,000+ 名学生