跳到正文
IGCSE·Tuition
学习路线

核对伪代码与 Python 的要求

你的代码在 Python 里能跑,考题却要求写伪代码,两者总是混在一起。

本页内容
  1. 两者真正的区别是什么?
  2. 怎样一步一步翻译一个循环?
  3. 示例
  4. 要留意的错误
  5. 两种记法还有哪些不同?
  6. 自我检查
  7. 什么时候可以考虑一对一补习?

伪代码和 Python 用不同的记法解决同一个问题,而题目期望哪一种,由你所考年份的大纲决定。不要只靠视频、同学笔记或针对其他年份的网站。请到剑桥页面,查看你科目代码的现行大纲。

本页说明如何在两者之间翻译、哪些差异会导致答错,以及该查证什么。你可以用安全的 Python 推理沙盒运行简短的原创练习,观察输出。

两者真正的区别是什么?

伪代码是写给人看的计划,没有电脑执行的固定语法,漏了冒号也不会“报错”。Python 是电脑要执行的语言,少一个冒号或缩进不对,程序就会停下。

因为伪代码是给读者看的,分数通常落在清晰的逻辑上:循环对不对、条件对不对、变量更新对不对。实践中的 Python 则看程序能否运行并得出正确结果。各自如何评分,请查看你所考年份的大纲。

怎样一步一步翻译一个循环?

  1. 先用日常语言写步骤:总和从零开始,把 1 到 5 每个数加进去,输出总和。
  2. 用大纲指引的格式写伪代码。
  3. 逐行翻译成 Python,检查循环范围和起始值。
  4. 用同样的输入手动追踪两个版本,再比较。

示例

任务:把整数 1 到 5 相加,并输出总和。

伪代码:

total ← 0
FOR i ← 1 TO 5
   total ← total + i
NEXT i
OUTPUT total

Python:

total = 0
for i in range(1, 6):
    total = total + i
print(total)

追踪:i 依次取 1、2、3、4、5,total 依次变成 1、3、6、10、15。两个版本都输出 15。

注意范围。伪代码的 FOR i ← 1 TO 5 包含 5。Python 的 range(1, 6) 在 6 之前停止,所以 5 被包含,只是因为结束值写了 6。

要留意的错误

有学生把伪代码的范围原样照搬,写成 range(1, 5)。

这个循环只取 i = 1、2、3、4,总和是 1 + 2 + 3 + 4 = 10,不是 15。程序没有任何报错,所以感觉是对的。答案恰好少了最后一个值。

改正的办法是用最小的情况手动追踪。运行之前先问:我的最后一个值用到了吗?

两种记法还有哪些不同?

概念要留意什么
列表或数组的位置有些伪代码指引从 1 开始,Python 列表从 0 开始
整数除法伪代码常用 DIV 和 MOD,Python 用 // 和 %
赋值与比较伪代码可能用 ← 和 =,Python 用 = 和 ==
代码块结尾伪代码用 NEXT、ENDIF 等词,Python 用缩进

具体关键字请看你自己的伪代码指引。

自我检查

  1. “把 2 到 6 相加”的 Python 循环怎么写?总和是多少?
显示答案 `for i in range(2, 7):` 取 2、3、4、5、6。总和是 2 + 3 + 4 + 5 + 6 = 20。
  1. 伪代码是 FOR i ← 3 TO 6,循环体运行几次?
显示答案 i 取 3、4、5、6,所以循环体运行 4 次。
  1. 17 DIV 5 和 17 MOD 5 各是多少?
显示答案 17 DIV 5 = 3(整数商),17 MOD 5 = 2(余数),因为 3 × 5 + 2 = 17。在 Python 中分别是 `17 // 5` 和 `17 % 5`。

什么时候可以考虑一对一补习?

如果只是要学几个记法差异,自学通常就够了。当你的程序能跑却总是输出错误,或者会写代码却在追踪表和伪代码题上丢分,就值得考虑找老师。

老师可以根据你自己的答案,找出反复出现的习惯,并建立一套简短的做法。你可以阅读我们教这门课的方式:计算机科学补习页面、计算机科学学习指南,或试试修改代码前先设计边界测试。

常见问题

IGCSE 计算机科学考试一定要写 Python 吗?

不要想当然。规定取决于你的大纲和考试年份。请打开剑桥 Computer Science 0478 页面,下载你所考年份的大纲,看它对伪代码和编程语言怎么写,再向学校或考试中心确认。

伪代码就是换了说法的 Python 吗?

不是。伪代码用来描述算法步骤,让读者不懂某种语言也能看懂逻辑。Python 是真正的语言,有严格的语法、缩进和内置行为。循环范围、下标起点和除法,在两者之间可能不同。

我应该多练哪一个?

两个都练,用同一道题。先写伪代码,再写 Python,然后对照。这样你会看到哪些习惯可以通用、哪些不行,也能应对两种题型。

学校教的不是 Python 怎么办?

思维方式是一样的。实践作业用学校教的语言,同时学会大纲所用的伪代码写法。问问老师课程期望哪种语言,并自己查看大纲。

资料来源

  1. 剑桥 IGCSE Computer Science 0478 课程页面

更新于:

下一步

如果你能写出可运行的程序,却常因记法不同而丢分,一对一老师可以逐步追踪你自己的答案,找出翻译出错的地方。

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

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

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

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