📚 Interdisciplinary Integrated Exercise Practice for Year 8 CAIE Computer Science | Year 8 CAIE 计算机:跨学科综合题型训练
In Year 8 CAIE Computer Science, you will increasingly encounter questions that blend computing concepts with ideas from mathematics, science, geography, music and even art. These interdisciplinary exercises test your ability to apply computational thinking in real-world contexts. This article provides a wide range of integrated practice problems, complete with step-by-step bilingual explanations, to strengthen your skills and confidence for the exam.
在 Year 8 CAIE 计算机科学课程中,你会越来越多地遇到将计算机概念与数学、科学、地理、音乐甚至艺术思想相结合的题目。这些跨学科练习考查你在真实情境中应用计算思维的能力。本文提供了大量综合练习题目,并配有逐步双语解析,帮助你巩固技能,提升考试信心。
1. Understanding Interdisciplinary Exam Questions | 理解跨学科考试题目
Interdisciplinary questions in CAIE Computer Science are designed to assess how well you can transfer computational skills to other subjects. For example, a question might ask you to write an algorithm to calculate a physics formula, or to use binary numbers to represent colours in art. These tasks mirror real-life problem solving, where boundaries between disciplines blur.
CAIE 计算机科学中的跨学科题目旨在评估你将计算技能迁移到其他学科的能力。例如,题目可能要求你编写一个算法来计算物理公式,或者使用二进制数表示美术中的颜色。这些任务反映了真实问题解决过程,在现实中学科界限往往是模糊的。
The key is to identify the computing core—whether it is algorithm design, data representation, logic or programming—and then apply it using the context given. Always read the question carefully and highlight the computing terms and the subject area related to the scenario.
关键在于识别计算机核心知识点——无论是算法设计、数据表示、逻辑还是编程——然后利用给定情境加以应用。始终仔细读题,并标出计算机术语以及与情境相关的学科领域。
2. Maths and Binary Conversion | 数学与二进制转换
Problem: Convert the decimal numbers 235 and 89 into 8‑bit binary. Add the two binary numbers together using column addition, showing all carries. Finally, convert the binary sum back to decimal. Explain how this process uses place value, just like in base‑10 addition.
问题:将十进制数 235 和 89 转换为 8 位二进制数。使用列加法将两个二进制数相加,展示所有进位。最后,将二进制和转换回十进制。解释这个过程如何像十进制加法一样运用位值。
Let’s solve it step by step. First, convert 235: we look for powers of 2. 128+64=192, +32=224, +8=232, +2=234, +1=235. So the bits are: 128(1),64(1),32(1),16(0),8(1),4(0),2(1),1(1). Binary: 11101011₂. Next, convert 89: 64+16=80, +8=88, +1=89. Bits: 64(1),32(0),16(1),8(1),4(0),2(0),1(1). Binary: 01011001₂.
我们来逐步解答。首先,转换 235:找 2 的幂次。128+64=192,+32=224,+8=232,+2=234,+1=235。因此各位为:128(1)、64(1)、32(1)、16(0)、8(1)、4(0)、2(1)、1(1)。二进制:11101011₂。接着转换 89:64+16=80,+8=88,+1=89。各位:64(1)、32(0)、16(1)、8(1)、4(0)、2(0)、1(1)。二进制:01011001₂。
Now set up the column addition. Write the two rows and the carry row. Here is a compact table representing each column from bit 7 to bit 0 (leftmost is bit 7, value 128).
现在进行列加法。写出两行以及进位行。下面用一个紧凑表格表示从位 7 到位 0 的每一列(最左侧为位 7,值为 128)。
| Carry | 1 | 1 | 1 | 0 | 1 | 0 | 1 | 0 |
| 235 | 1 | 1 | 1 | 0 | 1 | 0 | 1 | 1 |
| 89 | 0 | 1 | 0 | 1 | 1 | 0 | 0 | 1 |
| Sum | 0 | 1 | 0 | 0 | 0 | 1 | 0 | 0 |
Working through the additions: in the 1s column, 1+1=10₂, write 0, carry 1. In the 2s, carry 1 + 1 + 0 = 10₂, write 0, carry 1. Continue carefully. The final sum bits are 1 0 1 0 0 0 1 0 0? Wait, check: the table above shows an overflow—bit 8 appears. Actually, 235+89 = 324, which in binary needs 9 bits. The shown sum row only has 8 bits; we must include the overflow. The correct 9-bit sum is 101000100₂. Let’s verify: 256+64+4=324. So the full binary is 1 0100 0100, with the leading 1 as overflow. Therefore, in 8‑bit addition the result is 01000100 with a carry out (overflow flag set). The decimal value from the 8 bits is 68, which is incorrect unless we use the full 9 bits. The exercise highlights how overflows work.
逐步计算加法:在 1 列,1+1=10₂,写 0,进位 1。在 2 列,进位 1 + 1 + 0 = 10₂,写 0,进位 1。依此类推。最终和位为 1 0 1 0 0 0 1 0 0?核对一下:上表出现了溢出——第 8 位出现。实际上 235+89=324,二进制需要 9 位。所显示的和行只有 8 位;必须包含溢出。正确的 9 位和为 101000100₂。验证:256+64+4=324。因此完整二进制为 1 0100 0100,最高位 1 是溢出。所以 8 位加法结果为 01000100,且进位输出(溢出标志置位)。若只用 8 位,十进制值为 68,这是错误的,除非使用完整的 9 位。该练习突出显示了溢出的处理方式。
This directly mirrors base‑10 place value: each position represents a power of the base, and when a column exceeds the max digit (1 in binary, 9 in decimal), we carry into the next higher place. The algorithm is identical, reinforcing mathematical understanding of number systems.
这直接反映了十进制的位值:每个位置代表基数的幂次,当某一列超过最大数字(二进制为 1,十进制为 9)时,我们就进位到下一个更高位。算法完全相同,强化了对数系的数学理解。
3. Flowcharts for Science Experiments | 科学实验流程图
Problem: A chemistry student needs to test the pH of a soil sample. The procedure: collect soil, add distilled water, stir, dip pH paper, wait 30 seconds, compare colour with chart. If pH is less than 5, the soil is too acidic and lime must be added; if pH is between 5 and 7, it is acceptable; if pH is above 7, note it for alkaline‑loving plants. Repeat the test three times and calculate the average pH. Design a flowchart for this investigation.
问题:一名化学学生需要测试土壤样品的 pH。步骤:收集土壤,加入蒸馏水,搅拌,浸入 pH 试纸,等待 30 秒,与比色卡比较颜色。若 pH 小于 5,土壤过酸,需添加石灰;若 pH 在 5 到 7 之间,可接受;若 pH 高于 7,标记为适合喜碱性植物。重复测试三次并计算平均 pH。为该调查设计一个流程图。
We begin by identifying the start, inputs, processes, decisions and outputs. The flowchart must use standard symbols: oval for start/end, parallelogram for input/output, rectangle for process, diamond for decision. Let’s describe the flow step by step in a bilingual sequence.
我们首先确定起止、输入、处理、判断和输出。流程图必须使用标准符号:椭圆形表示起止,平行四边形表示输入/输出,矩形表示处理过程,菱形表示判断。我们来逐步描述流程,采用中英对照方式。
Start: “Begin soil pH test”. Set counter to 0 and sum to 0. Enter the loop: increment counter. Input: obtain a soil sample and prepare the solution. Process: dip pH paper and wait 30 seconds. Input/compare: read the colour against the chart to get pH value. Add pH to sum. Then decision: is counter = 3? If no, go back to the loop start. If yes, calculate average pH = sum/3. Next decision: is average pH < 5? If yes, output "Add lime". If no, check if pH > 7. If yes, output “Suitable for alkaline plants”. Otherwise, output “pH acceptable”. End.
开始:“开始土壤 pH 测试”。设定计数器为 0,总和为 0。进入循环:计数器加 1。输入:获取土壤样品并制备溶液。处理:浸入 pH 试纸等待 30 秒。输入/比较:对照比色卡读取 pH 值。将 pH 值加入总和。然后判断:计数器是否等于 3?若否,返回循环起始处。若是,计算平均 pH = 总和/3。接着判断:平均 pH < 5?若是,输出“添加石灰”。若否,检查是否 pH > 7。若是,输出“适合喜碱性植物”。否则,输出“pH 值可接受”。结束。
This flowchart combines scientific method with computing control structures (loop, selection). It also practices variable tracking and modular thinking, both essential in programming.
该流程图将科学方法与计算机控制结构(循环、选择)相结合。它还锻炼了变量跟踪和模块化思维,两者在编程中都至关重要。
4. Algorithms in Geography: Route Planning | 地理路线规划算法
Problem: Imagine you are a delivery drone navigating a small village. The map shows locations connected by footpaths with distances in metres: Home to Shop (200m), Shop to School (150m), Home to Park (300m), Park to School (100m), Shop to Park (250m). Write a simple algorithm, using pseudocode, to find the shortest route from Home to School visiting at least one other location. Explain how this relates to graph theory in geography and computing.
问题:假设你是一架送货无人机,在一个小村庄中导航。地图显示地点之间由步行道连接,并标注距离(米):家到商店 200 米,商店到学校 150 米,家到公园 300 米,公园到学校 100 米,商店到公园 250 米。编写一个简单的算法,使用伪代码,找出从家到学校并至少经过另一个地点的最短路线。解释这与地理和计算中的图论有何关联。
We can represent locations as nodes and paths as edges with weights (distances). Our algorithm will consider two possible intermediate stops: via Shop or via Park. We want the minimum of (Home→Shop + Shop→School) and (Home→Park + Park→School). Let’s write pseudocode.
我们可以将地点表示为节点,路径表示为带权重(距离)的边。我们的算法将考虑两个可能的中途停留点:经商店或经公园。我们希望取两条路径中的最小值:(家→商店 + 商店→学校) 和 (家→公园 + 公园→学校)。现在编写伪代码。
SET HomeShop = 200
SET ShopSchool = 150
SET HomePark = 300
SET ParkSchool = 100
Route1 = HomeShop + ShopSchool
Route2 = HomePark + ParkSchool
IF Route1 < Route2 THEN
Shortest = Route1
PRINT “Go via Shop, distance “, Route1, ” metres”
ELSE
Shortest = Route2
PRINT “Go via Park, distance “, Route2, ” metres”
ENDIF
The route via Shop is 200+150=350m; via Park is 300+100=400m. So the shortest is via Shop. This is a simple application of Dijkstra’s idea for small networks. In geography, it links to spatial analysis and transport networks; in computing, it introduces weighted graphs and optimisation.
经商店的路线为 200+150=350 米;经公园为 300+100=400 米。因此最短路线为经商店。这是对小规模网络应用 Dijkstra 思想的简化。在地理中,它与空间分析和交通网络相联系;在计算中,它引入了加权图和优化概念。
5. Data Representation: Music Notes to Binary | 数据表示:音符与二进制
Problem: A digital keyboard stores melodies using binary codes. Each note is represented by 8 bits: the first 4 bits encode the pitch (e.g., C=0001, D=0010, E=0011, F=0100, G=0101), and the last 4 bits encode the duration in quavers (0010 = 2 quavers = crotchet, 0001 = 1 quaver). Compose a short tune “EDC CDE” where each note is a crotchet except the last which is a minim (4 quavers). Write the binary sequence and then convert it to hexadecimal for compact storage. Connect this to how MIDI works.
问题:一台数字键盘使用二进制代码存储旋律。每个音符用 8 位表示:前 4 位编码音高(例如 C=0001,D=0010,E=0011,F=0100,G=0101),后 4 位编码以八分音符为单位的时值(0010 = 2 个八分音符 = 四分音符,0001 = 1 个八分音符)。创作一条短旋律 “EDC CDE”,除最后一个音符为二分音符(4 个八分音符)外,每个音符均为四分音符。写出二进制序列,然后将其转换为十六进制以便紧凑存储。将此与 MIDI 工作原理联系起来。
First, decode the notes. E pitch = 0011, D pitch = 0010, C pitch = 0001. Crotchet duration = 2 quavers = 0010, minim = 4 quavers = 0100. So the sequence: E crotchet: 0011 0010; D crotchet: 0010 0010; C crotchet: 0001 0010; (space) C crotchet: 0001 0010; D crotchet: 0010 0010; E minim: 0011 0100. Writing consecutively as bytes: 00110010 00100010 00010010 00010010 00100010 00110100.
首先,解码音符。E 音高 = 0011,D 音高 = 0010,C 音高 = 0001。四分音符时长 = 2 个八分音符 = 0010,二分音符 = 4 个八分音符 = 0100。序列为:E 四分音符:0011 0010;D 四分音符:0010 0010;C 四分音符:0001 0010;(空格)C 四分音符:0001 0010;D 四分音符:0010 0010;E 二分音符:0011 0100。作为字节连续写出:00110010 00100010 00010010 00010010 00100010 00110100。
Now convert each byte to hexadecimal by splitting into nibbles: 0011=3, 0010=2 ⇒ 32₁₆; 0010=2, 0010=2 ⇒ 22₁₆; 0001=1, 0010=2 ⇒ 12₁₆; again 12₁₆; then 22₁₆; 0011=3, 0100=4 ⇒ 34₁₆. The hex sequence is 32 22 12 12 22 34. This is much shorter to store. MIDI uses similar structured messages with status and data bytes recording pitch, velocity and timing.
现在将每个字节转换为十六进制,按半字节拆分:0011=3,0010=2 ⇒ 32₁₆;0010=2,0010=2 ⇒ 22₁₆;0001=1,0010=2 ⇒ 12₁₆;再次 12₁₆;然后 22₁₆;0011=3,0100=4 ⇒ 34₁₆。十六进制序列为 32 22 12 12 22 34。这样存储更简短。MIDI 使用类似的结构化消息,用状态字节和数据字节记录音高、力度和时间。
6. Pseudocode and Physics: Calculating Speed | 伪代码与物理:计算速度
Problem: Write a pseudocode program that asks the user for the distance covered (in metres) and the time taken (in seconds). Calculate the average speed in m/s. If the speed is above 20 m/s, display “Too fast! Reduce speed.” Otherwise, display “Speed is safe.” Extend the program to also output the speed in km/h (multiply by 3.6). Relate this to the physics formula v = d/t.
问题:编写一个伪代码程序,要求用户输入所经过的距离(米)和所用时间(秒)。计算以米/秒为单位的平均速度。若速度高于 20 米/秒,显示“太快!请减速。”否则,显示“速度安全。”扩展该程序,也输出以公里/小时为单位的速度(乘以 3.6)。将此与物理公式 v = d/t 联系起来。
Pseudocode must show clear sequence, input, process and output, with conditional logic. We’ll integrate the physics relation directly.
伪代码必须展示清晰的顺序、输入、处理和输出,并包含条件逻辑。我们将直接融入物理关系。
OUTPUT “Enter distance in metres:”
INPUT distance
OUTPUT “Enter time in seconds:”
INPUT time
speed_ms = distance / time
OUTPUT “Average speed = “, speed_ms, ” m/s”
speed_kmh = speed_ms × 3.6
OUTPUT “That is “, speed_kmh, ” km/h”
IF speed_ms > 20 THEN
OUTPUT “Too fast! Reduce speed.”
ELSE
OUTPUT “Speed is safe.”
ENDIF
This exercise bridges computing and physics: the algorithm executes the formula and adds decision making. It also reinforces unit conversion, a common cross-curricular skill.
该练习将计算与物理联系起来:算法执行公式并增加了决策环节。它还强化了单位换算这一常见的跨学科技能。
7. Spreadsheets and Financial Literacy | 电子表格与财务素养
Problem: You have a spreadsheet budget for a school event. Columns: Item, Cost per unit, Quantity, Total cost. Use spreadsheet formulas to calculate Total cost = Cost per unit × Quantity for each row. Then use SUM to find the overall total. Add a conditional formatting rule that highlights any item with a Total cost greater than $50 in red. Explain how cell referencing and functions automate financial planning.
问题:你为学校活动制作了一个电子表格预算。各列:项目、单价、数量、总成本。使用电子表格公式计算每一行的总成本 = 单价 × 数量。然后使用 SUM 求出总计。添加一个条件格式规则,将总成本超过 $50 的项以红色突出显示。解释单元格引用和函数如何自动化财务规划。
Let’s simulate the spreadsheet logic. Suppose A2 = “Banners”, B2 = 15, C2 = 4, then D2 formula: =B2*C2. Copy the formula down. E1: =SUM(D2:D10). Conditional formatting: select D2:D10, rule “Cell value > 50”, format red fill. This mirrors real-world applications where computing tools support financial literacy—students learn budgeting, formula logic and data presentation simultaneously.
我们来模拟电子表格逻辑。假设 A2 = “横幅”,B2 = 15,C2 = 4,则 D2 公式:=B2*C2。将公式向下复制。E1:=SUM(D2:D10)。条件格式:选中 D2:D10,规则“单元格值 > 50”,格式为红色填充。这反映了计算机工具支持财务素养的真实应用——学生同时学习预算编制、公式逻辑和数据展示。
Understanding relative and absolute referencing (e.g., $B$2) is crucial when applying tax rates or discounts. Spreadsheets thus blend arithmetic, commerce and computational design.
理解相对和绝对引用(例如 $B$2)在应用税率或折扣时至关重要。因此,电子表格融合了算术、商业和计算设计。
8. Scratch Projects and Art Design | Scratch 项目与艺术设计
Problem: Create a Scratch script that draws a square spiral with increasing side lengths. Start with side length 10, then turn 90°, and after each square increase side length by 5. Stop when side length > 100. Link this to geometry—angles, shapes—and arts, where repetitive patterns create visual beauty. Explain how loops and variables make the code efficient.
问题:创建一个 Scratch 脚本,绘制一个边长递增的正方形螺旋。从边长 10 开始,然后转 90°,每画完一个正方形后边长增加 5。当边长 > 100 时停止。将此与几何(角度、形状)和艺术联系起来,在艺术中重复图案可创造视觉美感。解释循环和变量如何使代码高效。
The Scratch script uses a repeat until loop and a variable “length”. Pseudocode equivalent: set length to 10, repeat until length > 100: move length steps, turn 90°, move length steps, turn 90°, move length steps, turn 90°, move length steps, turn 90°, change length by 5. This generates a spiral. The geometric concept is that a square has four 90° turns; changing the side length creates the spiral illusion. In art, such algorithmic patterns are examples of generative design. The use of a variable avoids writing hundreds of blocks, demonstrating abstraction and iteration.
Scratch 脚本使用“重复执行直到”循环和一个变量“length”。伪代码等效:将 length
Published by TutorHao | Year 8 Computer Science Revision Series | aleveler.com
更多咨询请联系16621398022(同微信)
屏轩国际教育cambridge primary/secondary checkpoint, cat4, ukiset,ukcat,igcse,alevel,PAT,STEP,MAT, ibdp,ap,ssat,sat,sat2课程辅导,国外大学本科硕士研究生博士课程论文辅导