📚 Cross-subject Integrated Problem Solving | 跨学科综合题型训练
In Year 8 WJEC Computing, you are not just learning how to code or use software — you are learning to think like a problem solver. The world of computing is deeply connected to other subjects such as Mathematics, Science, English and Design Technology. This integrated exercises set will challenge you to apply your programming, data representation and algorithmic thinking skills across different real‑world contexts. Each task is designed to mirror the style of WJEC assessment items while encouraging you to draw links between computing and daily life.
在 WJEC 八年级计算机课程中,你不仅要学习编程或使用软件,更要像一位解决问题的人那样去思考。计算的世界与数学、科学、英语和设计技术等学科密切相关。这套综合练习将挑战你在不同的真实情境中运用编程、数据表示和算法思维能力。每道题都模拟 WJEC 的评估风格,同时鼓励你发现计算机与日常生活之间的联系。
1. Binary Bakery Order | 二进制面包房订单
A baker uses a simple 4‑bit binary system to record customer orders for four types of bread: white, brown, seeded and baguette. If the binary digit is '1', that bread is ordered; '0' means not ordered. For example, 1010 means white and seeded are ordered. The baker asks you to write a program in Python that takes a 4‑bit binary string as input and prints the types of bread ordered. Try to add a function that calculates the total price: white £1.20, brown £1.10, seeded £1.50, baguette £1.60.
一位面包师用简单的 4 位二进制数记录顾客对四种面包的订单:白面包、黑面包、种子面包和法棍。二进制位为“1”表示订购该面包,“0”表示未订。例如,1010 表示订购了白面包和种子面包。面包师请你编写一个 Python 程序,输入一个 4 位二进制字符串,输出订购的面包种类。再试着添加一个计算总价的功能:白面包 1.20 英镑,黑面包 1.10 英镑,种子面包 1.50 英镑,法棍 1.60 英镑。
2. Scientific Temperature Monitor | 科学温度监测仪
In your Science lessons, you record the temperature of a beaker of water every minute for 5 minutes as it cools. Write an algorithm, using pseudocode or flowcharts, that reads the 5 temperature values (in degrees Celsius) and finds the average temperature drop per minute. Extend the algorithm to detect whether the cooling follows a pattern: if each reading is strictly lower than the previous one, display "Steady cooling"; otherwise, display "Irregular data".
在科学课上,你记录了一杯水冷却时每分钟的温度,共记录 5 分钟。请用伪代码或流程图编写一个算法,读入这 5 个温度值(摄氏度),并计算每分钟的平均下降温度。然后扩展算法以检测冷却是否具有规律:如果每一次读数都严格低于前一次,显示“Steady cooling”;否则显示“Irregular data”。
3. Story Path Adventure Game | 故事路径冒险游戏
In English, you are studying narrative structures. Use your computing skills to create a text‑based adventure game where the user makes choices. Start with a short story opening: "You are in a dark forest. You can go left or right." Then use if‑else statements in Python to branch the story into at least four different endings. Add a variable to track the player's courage points, which change based on their decisions. This task combines creative writing with programming logic and variables.
在英语课上,你们正在学习叙事结构。请运用你的计算机技能创建一个基于文本的冒险游戏,让用户做出选择。从一个简短的故事开头开始:“你身处一片黑暗的森林中,你可以向左走或向右走。”然后在 Python 中用 if‑else 语句至少分支出四种不同的结局。添加一个变量来跟踪玩家的勇气值,该值会根据他们的决定而变化。这项任务融合了创意写作与编程逻辑及变量。
4. Design Technology 3D Printing Code | 设计技术 3D 打印代码
In Design Technology, you are designing a simple plastic badge with your initials. A 3D printer understands coordinates. Write a Python program that asks for the two letters of your initials, then outputs a series of G‑code style instructions to draw the block letters on a 2D grid. For example, to draw the letter 'L', the printer could start at (0,0), go up to (0,40), then right to (20,0). Represent each letter as a list of coordinates. This task links geometry, coordinates and loops.
在设计技术课上,你正在设计一个带有自己姓名首字母的简单塑料徽章。3D 打印机理解坐标指令。编写一个 Python 程序,输入你名字的两个首字母,然后输出一系列类似 G‑码的指令,在二维网格上画出方块字母。例如,为了画出字母“L”,打印机可以从 (0,0) 出发,向上移动到 (0,40),再向右移动到 (20,0)。将每个字母表示为一组坐标列表。这个任务将几何、坐标和循环联系在一起。
5. Maths Quiz with Data Structures | 数据结构数学小测验
Design a program that generates a multiplication quiz for Year 4 pupils. The program should ask 5 random multiplication questions (numbers from 1 to 12). Store the questions and correct answers in a list or dictionary. At the end, show the score and give a feedback message: "Perfect!" for 5 correct, "Good job!" for 3‑4, "Keep practising!" otherwise. Use iteration and selection. This task integrates arithmetic, random numbers and basic data structures.
设计一个为四年级学生生成乘法小测验的程序。程序应随机提出 5 道乘法题(数字范围 1 到 12)。将问题和正确答案存储在一个列表或字典中。结束时显示得分并给出反馈信息:答对 5 题显示“Perfect!”,答对 3‑4 题显示“Good job!”,否则显示“Keep practising!”。使用循环和选择结构。这项任务综合了算术、随机数和基础数据结构。
6. Digital Sound Waveform Analysis | 数字声音波形分析
In Science, you learned that sound is a wave. A microphone converts sound into voltage samples. Imagine a 1‑second recording saved as 10 samples per second. The values are: [0, 2, 4, 2, 0, -2, -4, -2, 0, 2]. Write a Python program to find the maximum amplitude and count how many times the waveform crosses the zero line (changes from positive to negative or vice versa). Plot the waveform using asterisks: for each sample value, print a number of asterisks proportional to its absolute value, adding spaces for negative numbers to centre the wave.
在科学课上,你学过声音是一种波。麦克风将声音转换成电压样本。假设每秒采样 10 次的一秒录音数值为:[0, 2, 4, 2, 0, -2, -4, -2, 0, 2]。编写一个 Python 程序,找出最大振幅,并统计波形穿过零线的次数(从正变负或从负变正)。用星号绘制波形:对于每个样本值,按其绝对值大小输出相应数量的星号,负数前添加空格使波形居中。
7. Geography Rain Gauge Data Logger | 地理雨量计数据记录器
Your Geography project requires you to measure daily rainfall for a week. Write a program that asks for 7 rainfall amounts (in mm) and stores them in an array. Then calculate the total weekly rainfall, the average, and the day with the highest rainfall. Display the results in a formatted table using string formatting. Additionally, classify each day: "Dry" (0 mm), "Light rain" (<5 mm), "Moderate rain" (5 to 20 mm), "Heavy rain" (>20 mm). This integrates data handling, arrays and selection.
你的地理项目需要测量一周的每日降雨量。编写一个程序,输入 7 天的降雨量(毫米)并存储在数组中。然后计算周总降雨量、平均值以及降雨量最高的一天。用字符串格式化将结果显示在一个表格中。此外,对每一天进行分类:“Dry”(0 毫米)、“Light rain”(<5 毫米)、“Moderate rain”(5 到 20 毫米)、“Heavy rain”(>20 毫米)。这个任务综合了数据处理、数组和选择结构。
8. Art Pixel Pattern Generator | 美术像素图案生成器
ers the size of the grid (n). Your program uses nested loops to print an n×n pattern where '#' and '.' alternate, like a chessboard. Extend it by asking for a symbol pair (e.g. 'A' and 'B' sk mirrors the concept of pixel art and bitmap images, linking computing with visual arts.
创建一个使用 ASCII 字符生成棋盘图案的程序。用户输入网格大小 n。你的程序使用嵌套循环打印出 n×n 的图案,其中“#”和“.”交替出现,如同国际象棋棋盘。扩展功能,让用户输入一对符号(例如“A”和“B”)来创建自定义图案。这个任务模拟了像素艺术和位图图像的概念,将计算机与视觉艺术联系起来。
9. History Timeline Search Algorithm | 历史时间线搜索算法
In History, you are studying the Tudor period. You have a list of key events with dates: 1485 (Battle of Bosworth), 1509 (Henry VIII becomes king), 1534 (Act of Supremacy), 1558 (Elizabeth I becomes queen), 1588 (Spanish Armada). Implement a linear search algorithm that asks the user for a year and returns the event if found, or "Year not in list" if not. Then, to extend, sort the list by date and try a binary search. Compare how many steps each search takes.
在历史课上,你们正在学习都铎王朝时期。你有一份带有日期的关键事件列表:1485 年(博斯沃思战役)、1509 年(亨利八世即位)、1534 年(至尊法案)、1558 年(伊丽莎白一世即位)、1588 年(西班牙无敌舰队)。实现一个线性搜索算法,要求用户输入一个年份,如果找到就返回相应事件,否则返回“Year not in list”。然后扩展:按日期排序列表,尝试二分搜索。比较每种搜索所花费的步数。
10. Music Playlist Shuffle & Loop | 音乐播放列表随机播放与循环
A music app has a playlist of 8 songs stored in a list. Write a program that simulates a single random shuffle: display the songs in a random order without repeating any. Use a while loop and the random module. Then add an option to repeat the shuffled playlist 3 times. This task combines Music, probability and iterative programming.
一个音乐应用程序中有一个包含 8 首歌曲的播放列表,存储在一个列表中。编写一个程序,模拟一次随机播放:以随机顺序显示歌曲且不重复。使用 while 循环和 random 模块。然后添加一个选项,将打乱的播放列表重复播放 3 次。这项任务结合了音乐、概率和迭代编程。
11. Sports League Table Calculator | 体育联赛积分榜计算器
In PE, you are organising a five‑a‑ d a list of [wins, draws, losses] as values. Calculate points for each team: win = 3 points, draw = 1 point, loss = 0. Display the league table sorted by points descending. Use functions to keep the code modular. This exercise connects sports data with dictionaries, sorting and modular programming.
在体育课上,你正在组织一次五人制足球锦标赛。为 4 支球队记录胜、平、负场次。编写一个程序,使用字典存储球队名称作为键,以 [胜场, 平场, 负场] 列表作为值。计算每支球队的积分:胜得 3 分,平得 1 分,负得 0 分。按积分降序显示联赛积分榜。使用函数保持代码模块化。这个练习将体育数据与字典、排序和模块化编程联系起来。
12. Cross‑curricular Problem‑Solving Reflection | 跨学科问题解决反思
Reflect on how computing helps you solve problems in other subjects. Write a short paragraph discussing: Which integrated task did you find most challenging, and why? How did using algorithms or data representation simplify a real‑world problem from Science or Geography? Use correct computing terminology such as input, process, output, data types and debugging. This task strengthens your written communication while consolidating your understanding of computational thinking across the curriculum.
反思计算机如何帮助你解决其他学科中的问题。写一段简短的文字,讨论:你觉得哪一项综合任务最具挑战性,为什么?使用算法或数据表示如何简化了科学或地理中的实际问题?使用正确的计算机术语,如输入、处理、输出、数据类型和调试。这项任务在加强书面表达能力的同时,巩固了你在整个课程中对计算思维的理解。
Published by TutorHao | WJEC Computing Revision Series | aleveler.com
更多咨询请联系16621398022(同微信)

或截图后用「扫一扫 → 相册」选择本图