Final Exam Model Paper 10
Theory paper: 50 marksTime: 2 hours
Practical exam: 25 marksTime: 1 hour 30 minutes
All questions are compulsory.
A full practice run of the Grade 8 final exam: the theory paper (50 marks, 2 hours) and, below it, the practical exam (25 marks, 1 hour 30 minutes, at a computer, marked by the school). In the theory paper, work out on paper what each program does, as in the exam hall: its programs have no Run button. In the practical exam, the programs run on this page.
A practice paper by Science Playground, made to its own course’s grid; not an official exam paper.
Write your answers on paper first. Then open each answer and its marking scheme, and give yourself one mark for each point you got. In multiple choice, your first choice counts.
Section A
10 × 1 = 101. Choose the correct option for each of the following questions.
A herder in Mustang counts his yaks:
yaks = 12print("{yaks} yaks")What does it print?
Pick an answer to see why.
For a poster about Nepal’s cliff honey bees, Tenzin draws one cell of a honeycomb. What shape does this program draw?
import turtlet = turtle.Turtle()for side in range(6): t.forward(40) t.left(60)Pick an answer to see why.
Karma sorts the names of four villages with Python:
print(sorted(["Lo Manthang", "jomsom", "Kagbeni", "Marpha"]))It prints ['Kagbeni', 'Lo Manthang', 'Marpha', 'jomsom']. He says, “sorted() is broken: Jomsom should be first.” Which judgment is right?
Pick an answer to see why.
HTML is called a markup language. What does that mean?
Pick an answer to see why.
Pemba writes a white title, “Upper Mustang”, across the top of his photo, but over the snowy peaks the letters can’t be read. What is the best fix?
Pick an answer to see why.
Pemba’s micro:bit at a lodge in Lo Manthang should play a tune when guests come in. His program starts with from microbit import *, but stops at music.play(music.POWER_UP) with NameError: name 'music' is not defined. What must he add?
Pick an answer to see why.
Karma’s password manager always fills in his bank password. On a page that looks just like his bank’s, opened from a link in an SMS, it offers nothing. What does this most likely mean?
Pick an answer to see why.
A food-delivery app is broken into, and its customers’ names, phone numbers and orders are posted online. A week later Rinchen gets a call: “Hello Rinchen, about your order of momos last Friday: please tell us the code we have just sent you, for your refund.” Which judgment is right?
Pick an answer to see why.
Pemba translates a Nepali sentence into English with an app, and then translates the English back into Nepali with the same app, to compare it with what he wrote. What is this check called?
Pick an answer to see why.
Tenzin asks a chatbot to explain how yaks keep warm, for a talk to Grade 5 students. The answer is long and full of hard words. What is usually the best next step?
Pick an answer to see why.
Section B
8 × 1 = 82. Write very short answers to the following questions.
What does it mean to concatenate two strings?
Answer
To join them end to end: "Lo " + "Manthang" gives "Lo Manthang".
Marking scheme
- To join strings end to end (with
+).
Some documentation writes a function as round(number[, ndigits]). What do the square brackets round ndigits mean?
Answer
That ndigits is optional: it may be left out, as in round(7.6). The brackets themselves are never typed.
Marking scheme
- The part in square brackets is optional (it may be left out).
Filming the Tiji festival in Lo Manthang for a short video, why should Pemba film many short clips rather than one long one?
Answer
Short clips are much easier to cut: on the timeline he can choose the best ones, trim each and put them in order, instead of hunting through one long recording for the good moments.
Marking scheme
- Short clips are easier to cut, trim and put in order.
Pemba is building a flood alarm for a stream near his village. Why should he build its program a little at a time, running it after each part, rather than type it all and run it at the end?
Answer
If it goes wrong just after a small part was added, the bug must be in that part, so it is quick to find and fix. With the whole program typed at once, a mistake could be anywhere, and several mistakes get mixed up together.
Marking scheme
- A bug then shows right after the part that caused it, so it is easy to find.
Write the HTML for a bulleted list of two things made from yaks: “Cheese” and “Wool”.
Answer
<ul> <li>Cheese</li> <li>Wool</li></ul>Marking scheme
- A
<ul>with the two items, each in its own<li>.
A photo of 2,000 × 1,500 pixels takes 9,000,000 bytes raw. Saved as a JPEG at good quality, it is about 10 times smaller. About how many KB is the JPEG? (1 KB = 1,024 bytes.)
Answer
9,000,000 ÷ 10 = 900,000 bytes, and 900,000 ÷ 1,024 ≈ 879 KB.
Marking scheme
- About 880 KB.
This program should tell a herder in Mustang whether his yaks can cross the river: only when the water is less than 60 cm deep. For 45 cm it prints both lines. Which line is wrong, and what should be done?
depth = int(input("Depth of the river in cm: "))if depth < 60: print("Safe to cross.")print("Too deep: wait.")Answer
Line 4 isn’t part of the decision: it isn’t indented, so it runs every time, whatever the depth. Put else: before it and indent it under the else, so that only one of the two lines is printed:
depth = int(input("Depth of the river in cm: "))if depth < 60: print("Safe to cross.")else: print("Too deep: wait.")Output
Depth of the river in cm: 45Safe to cross.Marking scheme
- Line 4 runs every time; it needs an
else:with the line indented under it.
Late at night, Dolma’s mother gets a call in her son’s voice, from Qatar: he is in trouble and needs Rs 50,000 at once, and she must tell nobody. What should she do? Give one reason.
Answer
Hang up and call him back on the number she already has (or ask the family code word) before sending anything. AI can copy a voice from a few seconds of a video, and hurry and secrecy are the signs of a scam.
Marking scheme
- Call back on a known number (or use a family code word) before paying, because the voice may be a deepfake.
Section C
8 × 2 = 16Write short answers to the following questions.
Tenzin, a yak herder, wrote this:
morning = 14evening = morningmorning = 11print(evening)- i.What does it print, and why not 11?
- ii.What would it print if lines 2 and 3 were swapped? Why?
Answer
- i.It prints 14. Line 2 put a copy of morning’s value, 14, into evening. Line 3 changes only morning; evening keeps the 14 it was given.
- ii.It would print 11. Then
morning = 11runs first, so whenevening = morningruns, morning already holds 11, and that is the value copied. A variable gets the value the other one has at the moment the line runs.
Marking scheme
- i. 14, because line 2 copied the value at that time, and line 3 changes only morning.
- ii. 11, because morning is changed before its value is copied into evening.
A night bus leaves Kathmandu for Taplejung at 16 o’clock (4 pm), and the timetable says the trip takes 18 hours.
leaves = 16hours = 18arrives = (leaves + hours) % 24print("Arrives at", arrives, "o'clock")- i.Write the output of the program.
- ii.Why does it use
% 24? What would it print for a trip of 30 hours, and what doesn’t it tell you?
Answer
i. 16 + 18 = 34, and 34 % 24 is the remainder after a whole day of 24 hours, 10:
Output
Arrives at 10 o'clockii. A clock starts again at 0 after 24 hours, and % gives what is left over after whole days. For 30 hours, (16 + 30) % 24 is 46 − 24 = 22 o’clock; but it doesn’t tell you which day: that bus would arrive on the day after the next.
Marking scheme
- i.
Arrives at 10 o'clock. - ii.
% 24takes away whole days; 30 hours gives 22, but not on which day.
A trekking app finds villages on the trail with this function:
def find(names, target): for i in range(len(names)): if names[i] == target: return i return -1 trail = ["Jomsom", "Kagbeni", "Chele", "Tsarang", "Lo Manthang"]print(find(trail, "Tsarang"))print(find(trail, "Marpha"))- i.Write the output.
- ii.Why does the function return −1 for a village that isn’t there, rather than 0?
Answer
i. “Tsarang” is at position 3, so the function returns 3 as soon as it finds it. “Marpha” isn’t in the list, so the loop ends and line 5 returns −1:
Output
3-1ii. 0 is a real position: the first village, Jomsom. Returning 0 would mean “found at the front”. −1 can never be a position, so it clearly means “not there”.
Marking scheme
- i.
3, then-1. - ii. 0 is a real position (the first item), while −1 can’t be one, so it means “not found”.
At Jomsom, 2,700 m, it is 18 °C, and the air gets about 6 °C colder for every 1,000 m higher. Write a function temp_at(altitude) that returns the expected temperature at an altitude, and use it to print the temperatures at Muktinath (3,700 m) and Thorong Phedi (4,450 m).
Answer
def temp_at(altitude): return 18 - (altitude - 2700) / 1000 * 6 print("Muktinath:", temp_at(3700))print("Thorong Phedi:", temp_at(4450))Output
Muktinath: 12.0Thorong Phedi: 7.5Marking scheme
- A function
temp_atwith the parameter altitude that returns 18 minus 6 for every 1,000 m above 2,700. - Calls for 3,700 and 4,450 that print the returned temperatures (12.0 and 7.5).
Pemba’s photo of the cliffs of Upper Mustang is 6,000 × 4,000 pixels. For the top of a website, he crops a long, thin banner 3 : 1 (three times as wide as it is high), keeping the full width.
- i.How many pixels high will the banner be?
- ii.The website shows the banner 1,500 pixels wide. Will it look sharp there? Why?
Answer
- i.6,000 ÷ 3 = 2,000 pixels: the banner will be 6,000 × 2,000.
- ii.Yes. The banner has 6,000 pixels across, four times the 1,500 it is shown at, so it is shrunk to fit, never stretched, and keeps its detail.
Marking scheme
- i. 2,000 pixels.
- ii. Yes, because it has more pixels (6,000 across) than it is shown at (1,500).
A herder counts his yaks into the pen with button A, and out with button B:
from microbit import * yaks = 0while True: if button_a.was_pressed(): yaks = yaks + 1 if button_b.was_pressed(): yaks = yaks - 1 display.show(yaks)- i.He presses A 5 times and B twice. What does the board show? Why?
- ii.How does the program notice a press, even while it is busy showing the number?
Answer
- i.3: each press of A adds 1 (5 in) and each press of B takes 1 away (2 out), and the display shows the count each time round.
- ii.By polling: the
while True:loop goes round again and again, asking about each button every time, many times a second, much faster than anyone can press.was_pressed()gives oneTruefor each press since the last time it asked.
Marking scheme
- i. 3, because A adds 1 for each press and B takes 1 away.
- ii. Polling: the loop checks the buttons again and again, very fast.
Many ads are chosen by an automatic auction, in the moment a page or app opens. What happens in it? Why does it matter for your data?
Answer
A message about you (what you are looking at, roughly where you are, what is known about you) goes out to many advertisers’ computers; they bid, and the highest bid’s ad appears. It happens again each time an ad appears.
It matters because every company that gets the message receives the data about you, even the ones that lose, and each can add it to what it already knows: one way data brokers build their profiles of people.
Marking scheme
- Data about you goes to many advertisers, who bid; the highest bid’s ad is shown.
- Every company that gets the message keeps the data, even the losers, and can add it to its profile of you.
A company offers an AI tutor app to the schools of Mustang. Dawa says, “It will help every student, so it is simply good.” Lhamo says, “It will help students who have a smartphone, data and some English, but not the others, and every answer uses electricity and water in a data center abroad.” Judge the two views, and say one thing the community could do.
Answer
Lhamo’s view is the better one. A technology is rarely simply good or bad: it helps some people and costs others, and Lhamo looks at who is helped, who is left out (social) and what it costs (environmental), while Dawa’s claim has no evidence and ignores both. What the community does decides how it turns out: for example, let the school lend devices and run the app on its Wi-Fi so every student can use it, train teachers to use it, and check how much it helps before paying for more.
Marking scheme
- Lhamo’s is better: she weighs who is helped and left out, and its cost, while Dawa says it is simply good without evidence.
- One sensible action for the community (shared devices or Wi-Fi at school, training, rules, checking how well it works).
Section D
4 × 4 = 16Write long answers to the following questions.
At a free health camp in Mustang, the nurse wants to count the patients in three age groups: under 5, 5 to 59, and 60 and over. Write a program that asks for each patient’s age until −1 is typed (a baby can be 0 years old), and then prints how many patients were in each group and in all.
- i.Write the program. (3)
- ii.Why should it use
if … elif … elserather than three separateifs:if age < 5,if age < 60andif age >= 60? (1)
Answer
i.
under_5 = 0middle = 0over_60 = 0age = int(input("Age of the patient (-1 to stop): "))while age != -1: if age < 5: under_5 = under_5 + 1 elif age < 60: middle = middle + 1 else: over_60 = over_60 + 1 age = int(input("Age of the patient (-1 to stop): "))print("Under 5:", under_5)print("5 to 59:", middle)print("60 and over:", over_60)print("Patients:", under_5 + middle + over_60)For the ages 3, 34, 67, 45, 80, 1 and 29:
Output
Age of the patient (-1 to stop): 3Age of the patient (-1 to stop): 34Age of the patient (-1 to stop): 67Age of the patient (-1 to stop): 45Age of the patient (-1 to stop): 80Age of the patient (-1 to stop): 1Age of the patient (-1 to stop): 29Age of the patient (-1 to stop): -1Under 5: 25 to 59: 360 and over: 2Patients: 7ii. With separate ifs, every one is checked, so a child of 3 would pass both age < 5 and age < 60, and be counted twice. With elif, the first true condition wins and the rest are skipped, so each patient is counted once, and elif age < 60 only ever sees ages of 5 and more.
Marking scheme
- i. A
whileloop that asks for ages withint(input(…))and stops at −1. - i. Three counters starting at 0 before the loop.
- i.
if/elif/elsewith the right boundaries (under 5; 5 to 59; 60 and over), and the counts and total printed after the loop. - ii. Separate
ifs would count a child in two groups; withelifonly the first true condition runs.
A guide keeps the mountain passes he has crossed in a list, in the order he crossed them. His program should find where a pass is in the list:
passes = ["Thorong La", "Larkya La", "Cho La", "Renjo La", "Kongma La", "Tilman Pass", "Laurebina La"]target = input("Which pass? ")found = -1for position in range(1, len(passes)): if passes[position] == target: found = positionif found == -1: print(target, "is not in the list.")else: print(target, "is at position", found)- i.Make a test table for it with four tests: one ordinary test, two edge tests of different kinds, and one wrong input. Give each test’s input and what should happen. (2)
- ii.The program has a bug. Which of your tests finds it, what does the program print for it, and why? (2)
Answer
i. For example:
| Test | Kind | Input | Should happen |
|---|---|---|---|
| 1 | ordinary | Cho La | at position 2 |
| 2 | edge: the first item | Thorong La | at position 0 |
| 3 | edge: the last item (or a pass that isn’t there, such as Ganja La) | Laurebina La | at position 6 (Ganja La: not in the list) |
| 4 | wrong | 5 (or nothing typed) | a sensible message, such as “not in the list” |
ii. The edge test for the first item, Thorong La. It should be at position 0, but the program prints:
Output
Which pass? Thorong LaThorong La is not in the list.range(1, len(passes)) starts at 1, so position 0 is never compared: the first pass can never be found. It should be range(len(passes)). The ordinary test, Cho La, and the last item both pass, so only the edge test shows the bug.
Marking scheme
- i. An ordinary test and a wrong input, each with what should happen.
- i. Two edge tests of different kinds (first item, last item, not there), each with what should happen.
- ii. The first-item test (Thorong La) finds it: the program says it is not in the list.
- ii. Because
range(1, …)starts at position 1, so position 0 is never compared.
Read the web page and its style sheet, and answer the questions that follow.
index.html
<!DOCTYPE html><html lang="en"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Upper Mustang</title> <link rel="stylesheet" href="style.css"> </head> <body> <h1>Upper Mustang</h1> <p>A high, dry land behind the Himalaya, once the Kingdom of Lo.</p> <h1>How to get there</h1> <p>Fly to Jomsom, then walk or drive north. <a href="permits.html">The permits you need</a></p> <img src="chortens.jpg" alt="Old stone and mud chortens, painted red and white, on a bare hillside"> </body></html>style.css
img { width: 1200px; border: 3px solid #8b4513;}- i.What does the
<a>element on line 13 show, and what happens when it is tapped? (1) - ii.What do the two declarations in the CSS rule do? (1)
- iii.Write two things in this page that make it harder for some people to use, and how to fix each. (2)
Answer
- i.It shows the words “The permits you need” as a link; tapping them opens the page
permits.html. - ii.
width: 1200pxmakes every photo 1,200 pixels wide, andborder: 3px solid #8b4513draws a solid line 3 pixels thick round it, in the color#8b4513(a brown).
iii.
- There are two
<h1>headings. A page should have one main heading; “How to get there” is a part of the page, so make it<h2>. - A fixed width of 1,200 px is far wider than a phone’s screen, so the photo sticks out and the reader must scroll sideways. Use
max-width: 100%;instead.
Marking scheme
- i. The words as a link that opens permits.html.
- ii. Each photo 1,200 pixels wide, with a 3-pixel solid border (in the color #8b4513).
- iii. The two h1 headings, fixed by making the second an h2.
- iii. The fixed width wider than a phone, fixed with
max-width: 100%.
Read the given passage and answer the questions that follow.
Pasang runs a trekking company in Solukhumbu. He buys a second-hand laptop for the office, and plans to sell his old phone. His new phone came with many apps already on it, games and shopping apps among them.
- i.What must he do to the second-hand laptop before anything else, and why? (1)
- ii.Before he sells his old phone, what three things should he do, in order? (1)
- iii.What should he do about the apps that came with the new phone and that he won’t use? (1)
- iv.A week later, the new phone says a big system update is ready. When should he install it? (1)
Answer
- i.A factory reset, which wipes everything the last owner left on it: their accounts, files and any harmful programs.
- ii.Back it up, sign out of his accounts, then reset it.
- iii.Remove them, or switch them off, and check the permissions of the apps he keeps.
- iv.When the battery is charged, the phone is on Wi-Fi, and he won’t need the phone for about half an hour.
Marking scheme
- i. A factory reset, to wipe what the last owner left.
- ii. Back up, sign out, reset.
- iii. Remove or switch off the apps he won’t use (and check the others’ permissions).
- iv. With the battery charged, on Wi-Fi, at a time he won’t need the phone for about half an hour.
Practical exam
25 marksMarked by the school. Work alone at a computer, with no internet and no AI, in front of the teacher, for 1 hour 30 minutes. Write and run each program, show it working, and answer the teacher’s questions. On this page, press Edit on a program to type in it, and Run to run it.
Crossing the pass. A trekking group waits at Thorong Phedi to cross the Thorong La pass. Their guide’s rule: cross only on a morning when the wind on the pass is under 40 km/h, and wait at most 3 days. Write a program that:
- each morning, asks for the wind speed on the pass;
- prints “Cross today!” and stops asking if the wind is under 40, or else “Too windy: wait another day.”;
- after 3 windy mornings, prints “Go back down and try another time.”
Run it in front of the teacher with winds of 65, 50 and 30 km/h, and again with 70, 60 and 55.
# Crossing the pass: write your program hereday = 1Answer
day = 1crossed = Falsewhile day <= 3 and not crossed: wind = int(input(f"Day {day}: wind on the pass (km/h): ")) if wind < 40: print("Cross today!") crossed = True else: print("Too windy: wait another day.") day = day + 1if not crossed: print("Go back down and try another time.")Output
Day 1: wind on the pass (km/h): 65Too windy: wait another day.Day 2: wind on the pass (km/h): 50Too windy: wait another day.Day 3: wind on the pass (km/h): 30Cross today!With 70, 60 and 55:
day = 1crossed = Falsewhile day <= 3 and not crossed: wind = int(input(f"Day {day}: wind on the pass (km/h): ")) if wind < 40: print("Cross today!") crossed = True else: print("Too windy: wait another day.") day = day + 1if not crossed: print("Go back down and try another time.")Output
Day 1: wind on the pass (km/h): 70Too windy: wait another day.Day 2: wind on the pass (km/h): 60Too windy: wait another day.Day 3: wind on the pass (km/h): 55Too windy: wait another day.Go back down and try another time.crossed is a flag: it starts False and becomes True once the group crosses, which ends the loop. Other ways of stopping the loop are fine, and other wordings of the messages.
Marking scheme
- Sets a day counter (and a flag, or another way to stop) before the loop.
- A
whileloop that stops after the third windy morning. - Asks for the wind each morning with
input(), converted withint(). - An
ifthat checks for a wind under 40. - Prints “Cross today!” and stops asking when the wind is under 40.
- Prints the windy message and moves on to the next day otherwise.
- Prints “Go back down…” once, only when no morning was calm enough.
- Runs it in front of the teacher with both sets of winds and gets the right output.
The yak train. A herder needs a second herder for more than 10 yaks. This program should tell him. Run it.
yaks = int(input("How many yaks? "))if yaks > 10:print("Hire a second herder.")print("Yaks on the trail:", yaks)- i.Write the kind of error and the line Python names.
- ii.Say why it happens.
- iii.Fix the program.
- iv.Test it with 12, 10 and 4 yaks: write what each should print first, then run it.
Answer
i. and ii. An IndentationError, on line 3:
Error message
File "main.py", line 3 print("Hire a second herder.") ^^^^^IndentationError: expected an indented block after 'if' statement on line 2The lines that belong to an if must be indented under it. Line 3 is not, so Python finds nothing inside the if, and refuses to run any of the program.
iii. Indent line 3 by four spaces. Line 4 stays where it is, so that it runs for every number of yaks:
yaks = int(input("How many yaks? "))if yaks > 10: print("Hire a second herder.")print("Yaks on the trail:", yaks)Output
How many yaks? 12Hire a second herder.Yaks on the trail: 12iv.
| Yaks | Should print | Kind of test |
|---|---|---|
| 12 | Hire a second herder. then Yaks on the trail: 12 | ordinary |
| 10 | Yaks on the trail: 10 only (10 is not more than 10) | edge |
| 4 | Yaks on the trail: 4 only | ordinary |
Marking scheme
- Names the IndentationError and line 3.
- Explains that the line inside the
ifmust be indented. - Indents line 3 only (line 4 left as it is), and it runs.
- Writes the expected results for 12, 10 and 4 first, and the program gives them (10 needs no second herder).
A page about Upper Mustang. Make a small web page with:
- a title, and a main heading;
- a sentence or two about Upper Mustang;
- a list of three things a visitor can see there;
- the photo
mustang.jpg, of old chortens on a bare hillside, with alt text; - at least one CSS rule in the style sheet that changes how the page looks.
Show it to the teacher, on a phone width as well.
Answer
One good page (yours will be different):
index.html
<!DOCTYPE html><html lang="en"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Visit Upper Mustang</title> <link rel="stylesheet" href="style.css"> </head> <body> <h1>Visit Upper Mustang</h1> <p>Upper Mustang is a high, dry land north of the Himalaya, once the Kingdom of Lo, with its walled capital, Lo Manthang.</p> <h2>Things to see</h2> <ul> <li>The walled city of Lo Manthang</li> <li>Old chortens and monasteries painted red and white</li> <li>Cliffs of red and yellow rock above the Kali Gandaki</li> </ul> <img src="mustang.jpg" alt="Old stone chortens with red and white bands on a bare, stony hillside, with gray mountains behind"> </body></html>style.css
body { font-family: sans-serif; background-color: #f6efe4;} h1 { color: #8b2e16;} img { max-width: 100%;}The max-width: 100% rule keeps the photo inside a phone’s screen.
Marking scheme
- A
<title>that says what the page is, with the skeleton (lang, head and body) kept correct. - One
<h1>main heading at the top of the body. - A paragraph (
<p>) about Upper Mustang. - A list (
<ul>or<ol>) with three<li>items, opened and closed correctly. - The photo shown with
<img src="mustang.jpg">. - Alt text that says what the photo shows (not just “photo” or “image”).
- A CSS rule with a selector and a declaration (property: value;) that changes how the page looks.
Viva. The teacher asks each student about their own work, for example:
- i.In your pass program, how does the loop know when to stop? What would happen if the line that adds 1 to the day were left out? (2)
- ii.Why does your pass program check
if not crossed:after the loop? What would go wrong without that check? (2) - iii.Why do you use a style sheet for the colors, instead of writing them into the HTML? (2)
Answer
- i.It stops when the group has crossed (crossed becomes
True) or when day goes past 3. Withoutday = day + 1, day would stay 1, so on windy morningsday <= 3would never becomeFalse: the program would keep asking, an infinite loop, until a calm morning came. - ii.The loop can end in two ways: the group crossed, or 3 windy days went by. Only the second should send them down. Without the check, a group that crossed on day 3 (winds 65, 50, 30) would be told “Cross today!” and then “Go back down and try another time.”
- iii.The HTML says what the content is, and the CSS how it looks. With the look in one style sheet, one change there changes every page that uses it, the page stays easy to read and fix, and screen readers and phones still find the headings and lists in the HTML.
Marking scheme
- i. It stops when crossed becomes True or the day passes 3.
- i. Without adding 1 to the day, the loop would never end on windy days (an infinite loop).
- ii. The loop ends either when they crossed or after 3 windy days; only the second should print “Go back down”.
- ii. Without it, a group that crossed would also be told to go back down.
- iii. HTML holds the content, CSS how it looks.
- iii. One style sheet can be changed once for every page (easier to keep and fix).
Your score
0 / 50 theory
0 / 25 practical
34 questions not marked yet
| Section A | – | Full marks 10 |
| Section B | – | Full marks 8 |
| Section C | – | Full marks 16 |
| Section D | – | Full marks 16 |
| Practical exam | – | Full marks 25 |
Marks lost, by unit
Mark a question to see your score here.
