← Grade 9 final exam model papers
Final Exam Model Paper 1
Full marks: 50Time: 2 hours
All questions are compulsory.
A full practice run of the Grade 9 final exam’s Computer Science theory paper: 50 marks in 2 hours, every question compulsory. Work out on paper what each program in a question does, as in the exam hall: those programs have no Run button. The programs in the answers do run.
A practice paper by Science Playground, made to CDC’s Specification Grid, Computer Science, Grade 9 (2082). Not an official CDC or exam board paper; the real Grade 9 final exam may differ.
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.
Paper to print (PDF, 3 pages) Answer key and marking scheme
Group A
10 × 1 = 10Choose the correct answer for each of the following questions.
Which type of RAM is used as cache memory?
Pick an answer to see why.
Dolma has 2 GB of free space on her pen drive. How many photos of 4 MB each can she copy onto it?
Pick an answer to see why.
Kushal edits videos for his school’s YouTube channel. His laptop is fine while he edits, but it takes a long time to open his big video files from its hard disk. Which change would make opening them faster?
Pick an answer to see why.
In Scratch, where does the result of a program, the sprites moving and talking, appear?
Pick an answer to see why.
What is the main job of CSS in a web page?
Pick an answer to see why.
Rojina writes this list in her web page. With which letter is the first item, Bhimsen Tower, shown?
<ol type="A" start="3"> <li>Bhimsen Tower</li> <li>Patan Durbar Square</li></ol>Pick an answer to see why.
Which protocol is used to send email?
Pick an answer to see why.
Sanjeev gets an SMS: “Your eSewa account will be blocked today. Tap the link and enter your PIN to keep it open.” What should he do?
Pick an answer to see why.
Which of the following is a relational operator in Python?
Pick an answer to see why.
What is the output of print(17 // 5, 17 % 5)?
Pick an answer to see why.
Group B
10 × 2 = 20Write short answers to the following questions.
Write any two differences between RAM and ROM.
Answer
| RAM | ROM |
|---|---|
| Volatile: everything in it is lost when the power goes off. | Non-volatile: it keeps its contents without power. |
| Read/write memory: the CPU can both read from it and write to it. | Read only: its contents can be read but not changed in ordinary use. |
| Holds the programs and data being used now. | Holds fixed instructions such as the BIOS, which starts the computer. |
| Its contents change all the time while the computer works. | Its contents are written in by the manufacturer. |
(Any two.)
Marking scheme
- One correct difference with both sides (e.g. RAM volatile / ROM non-volatile).
- A second correct difference (e.g. RAM read and write / ROM read only; programs in use / the BIOS).
Bimala looks after the computers at her school. Name the port she should use for each job, and give a reason.
- a.Joining a laptop to the hall’s projector so that the pictures and the sound both go on one cable. (1)
- b.Joining a new desktop computer to the school’s wired local area network (LAN). (1)
Answer
- a.HDMI (High Definition Multimedia Interface): it carries high-definition video and sound together on a single cable. (VGA carries only analog video.)
- b.Ethernet (an RJ-45 socket): it joins a computer to a wired LAN with a network cable.
Marking scheme
- a. HDMI, because it carries video and sound together on one cable.
- b. Ethernet (RJ-45), because it connects a computer to a wired LAN.
Convert as indicated.
- a.(110101)₂ into decimal (1)
- b.(58)₁₀ into binary (1)
Answer
a. Multiply each digit by its place value and add:
1 × 2⁵ + 1 × 2⁴ + 0 × 2³ + 1 × 2² + 0 × 2¹ + 1 × 2⁰ = 32 + 16 + 0 + 4 + 0 + 1 = 53
So (110101)₂ = (53)₁₀.
b. Divide by 2 until the quotient is 0, and read the remainders from the bottom up:
| 2 | Number | Remainder |
|---|---|---|
| 2 | 58 | 0 |
| 2 | 29 | 1 |
| 2 | 14 | 0 |
| 2 | 7 | 1 |
| 2 | 3 | 1 |
| 1 | 1 |
So (58)₁₀ = (111010)₂. Check: 32 + 16 + 8 + 2 = 58.
Marking scheme
- a. Place values shown and (53)₁₀.
- b. Repeated division by 2 shown and (111010)₂.
Perform the following binary operations.
- a.(11011)₂ + (1101)₂ (1)
- b.(11010)₂ − (111)₂ (1)
Answer
a.
1 1 0 1 1+ 1 1 0 1-----------1 0 1 0 0 0Working from the right: 1 + 1 = 10 (write 0, carry 1); 1 + 0 + 1 = 10 (0, carry 1); 0 + 1 + 1 = 10 (0, carry 1); 1 + 1 + 1 = 11 (1, carry 1); 1 + 1 = 10 (0, carry 1); the last carry is written in front. So the sum is (101000)₂. Check: 27 + 13 = 40.
b.
1 1 0 1 0- 1 1 1----------- 1 0 0 1 1From the right: 0 − 1 borrows from the 1 next to it (10 − 1 = 1); that column is now 0, and 0 − 1 borrows again, from the 1 two places on, through the 0 between, which becomes 1 (10 − 1 = 1); the middle column is then 1 − 1 = 0; the column that lent is 0 − 0 = 0; the first 1 stays. So the difference is (10011)₂. Check: 26 − 7 = 19.
Marking scheme
- a. (101000)₂, with the carries shown.
- b. (10011)₂, with the borrows shown.
Write the HTML code to show the heading “Places to visit in Pokhara” as a level-2 heading, and under it an ordered list of three places: Phewa Lake, Sarangkot and Davis Falls.
Answer
<h2>Places to visit in Pokhara</h2><ol> <li>Phewa Lake</li> <li>Sarangkot</li> <li>Davis Falls</li></ol>The browser shows the heading in bold, larger than the text, and the three places numbered 1, 2 and 3.
Marking scheme
- The heading in
<h2>…</h2>. - The ordered list:
<ol>…</ol>with each place in its own<li>…</li>.
Write any two differences between HTTP and HTTPS.
Answer
| HTTP | HTTPS |
|---|---|
| Hypertext Transfer Protocol. | Hypertext Transfer Protocol Secure. |
| Sends data as plain text, which anyone on the way can read. | Encrypts (scrambles) the data, so nobody on the way can read or change it. |
| Doesn’t prove which website you are talking to. | The server shows a certificate that proves it is the website it claims to be. |
The address begins http://, and the browser says “Not secure”. |
The address begins https://, and the browser shows a padlock. |
| Not fit for passwords and payments. | Used for logins, banking and payments. |
(Any two.)
Marking scheme
- One correct difference with both sides (e.g. plain text / encrypted).
- A second correct difference (e.g. no certificate / a certificate; http:// / https:// with a padlock).
Rabina’s friend is excited about her exam and wants to post a photo of her admit card, with her name, photo, school, symbol number and date of birth on it, on her public social media account. What two pieces of advice would you give her? Give a reason for each.
Answer
Any two, each with its reason:
- Don’t post photos of documents. An admit card shows her name, photo, school and date of birth together; a stranger could use them to pretend to be her (identity theft) or to trick her or her friends.
- Keep the account private, and accept only people she knows in real life, because a public post can be seen, copied and shared by anyone.
- Think before posting. A post can be copied and kept forever, even after it is deleted, so share the happy news in words, or a photo with no details on it.
- Keep private things private: her school, her routine and where she is, so that nobody can find or follow her.
Marking scheme
- First advice with its reason (e.g. no photos of documents: they can be used to steal her identity).
- Second advice with its reason (e.g. a private account / think before posting, since posts can be copied and kept forever).
What is an identifier? Write any two rules for naming an identifier in Python.
Answer
An identifier is a name a programmer gives to something in a program, such as a variable: total_marks, name.
Rules (any two):
- It must start with a letter or an underscore
_, never a digit. - It may contain only letters, digits and underscores: no spaces or other symbols such as
-or@. - It can’t be a Python keyword such as
iforwhile. - It is case-sensitive:
ageandAgeare different identifiers.
Marking scheme
- Identifier: a name given to a variable (or other item) in a program.
- Two correct rules.
Pooja wrote this program to add up the digits of a number. Write its output and show it in a dry-run table.
n = 472s = 0while n > 0: d = n % 10 s = s + d n = n // 10print("Sum of digits:", s)Answer
| n (at the check) | n > 0 | d = n % 10 | s = s + d | n = n // 10 |
|---|---|---|---|---|
| 472 | True | 2 | 2 | 47 |
| 47 | True | 7 | 9 | 4 |
| 4 | True | 4 | 13 | 0 |
| 0 | False | (loop ends) |
n = 472s = 0while n > 0: d = n % 10 s = s + d n = n // 10print("Sum of digits:", s)Output
Sum of digits: 13n % 10 takes the last digit and n // 10 drops it, so the loop adds 2, 7 and 4.
Marking scheme
- A correct dry-run table (d, s and n for each time round the loop).
- The output:
Sum of digits: 13.
Tenzing is putting a fence round his family’s rectangular vegetable plot in Solukhumbu. Write a Python program that asks for the length and breadth of the plot in meters and displays its area and the length of fence needed (its perimeter).
Answer
length = float(input("Length of the plot (m): "))breadth = float(input("Breadth of the plot (m): "))area = length * breadthfence = 2 * (length + breadth)print("Area:", area, "square meters")print("Fence needed:", fence, "meters")Output
Length of the plot (m): 12Breadth of the plot (m): 8Area: 96.0 square metersFence needed: 40.0 meters(Any correct program.)
Marking scheme
- The length and breadth read with
float(input())(orint). - Area = length × breadth and fence = 2 × (length + breadth), both displayed.
Group C
5 × 4 = 20Write long answers to the following questions.
What is software? Explain any three kinds of system software. [1+3]
Answer
Software is the set of instructions, programs and data that tells a computer what to do. It is the intangible part of a computer: it can’t be touched.
Kinds of system software (any three):
- Operating system: controls and manages the whole working of the computer (programs, memory, files and devices) and gives the user an interface. Examples: Windows, Linux, Android.
- Language processor (translator): translates programs written in assembly or a high-level language into machine language: an assembler, a compiler or an interpreter.
- Utility software: maintains the computer and its data: antivirus, backup, file compression and disk defragmenter programs.
- Device driver: a program that controls one particular device, such as a printer, so that the operating system can use it.
Marking scheme
- Software: the instructions and programs that tell a computer what to do (the intangible part).
- The first kind of system software, with what it does (e.g. the operating system manages the computer).
- The second (e.g. a language processor translates programs into machine language).
- The third (e.g. utility software maintains the computer: antivirus, backup).
Arrange the blocks so that, when the space key is pressed, the sprite turns 15 degrees, says “Namaste!” for 2 seconds and then plays the Meow sound until it is done.
1
2
3
4
Answer
3, 4, 1, 2:
- 3, when space key pressed (Events): a hat block, the only kind that can start a script, so it goes on top.
- 4, turn ↻ 15 degrees (Motion).
- 1, say Namaste! for 2 seconds (Looks).
- 2, play sound Meow until done (Sound).
Marking scheme
- Block 3 (when space key pressed) first, on top.
- Block 4 (turn 15 degrees) second.
- Block 1 (say Namaste! for 2 seconds) third.
- Block 2 (play sound Meow until done) last.
Ishwori’s school is holding a science fair. Write the HTML code to create the registration form shown below. Both radio buttons must belong to one group, so that only one event can be chosen.
Answer
<form name="fair" method="post"> Full name: <input type="text" name="fullname"><br><br> Event: <input type="radio" name="event" value="quiz"> Quiz <input type="radio" name="event" value="poster"> Poster<br><br> <input type="submit" value="Submit"> <input type="reset" value="Reset"></form>The two radio buttons share name="event", so choosing one clears the other. <br> puts each part on its own line. (<label> tags, or <button> for the buttons, are also correct.)
Marking scheme
- The
<form>tag opened and closed, with the other tags inside it. - A text box for the full name:
<input type="text">. - Two radio buttons, Quiz and Poster, with the same
name. - The Submit and Reset buttons:
<input type="submit">and<input type="reset">.
What is malware? Explain any three kinds of malware. [1+3]
Answer
Malware (malicious software) is any program written to do harm to a computer or its user: to damage, steal, spy or take control, put on a device without the owner’s permission.
Any three:
- Virus: attaches itself to a program or file and runs when that is opened; it may delete or damage files, and spreads with the files it is in (pen drives, downloads, attachments).
- Worm: copies itself from computer to computer by itself, through a network, using holes in software that isn’t updated.
- Trojan horse: pretends to be a useful program, such as a free game, but does harm once the user installs it, often letting an attacker in.
- Ransomware: encrypts the user’s files and demands money for the key.
- Spyware: secretly watches what the user does and sends it to someone; a keylogger records every key pressed, passwords included.
- Adware: floods the device with advertisements, often slowing it down.
Marking scheme
- Malware: software written to harm a computer or its user (damage, steal, spy).
- The first kind explained (e.g. a virus attaches to files and runs when they are opened).
- The second (e.g. a worm spreads by itself through a network).
- The third (e.g. a Trojan horse pretends to be a useful program).
A parking lot near Bhrikutimandap charges for a motorbike by the hours it is parked:
| Hours parked | Charge |
|---|---|
| up to 1 hour | Rs 20 (minimum charge) |
| 2 to 3 hours | Rs 25 per hour |
| more than 3 hours | Rs 40 per hour |
Write a Python program that takes the hours parked (a whole number) as input and displays the charge.
Answer
# Input: the hours parkedhours = int(input("Enter the hours parked: "))# Work out the charge from the tableif hours <= 1: charge = 20 # the minimum chargeelif hours <= 3: charge = hours * 25else: charge = hours * 40# Output: the chargeprint("Parking charge = Rs", charge)Output
Enter the hours parked: 4Parking charge = Rs 160Each band: 1 hour gives Rs 20, 3 hours 3 × 25 = Rs 75, 4 hours 4 × 40 = Rs 160. (Any correct program.)
Marking scheme
- The hours read with
int(input()). - The conditions with
if,elifandelsein the right order. - The charge worked out correctly in each branch (20, hours × 25, hours × 40).
- The charge displayed.
Your score
0 / 50
25 questions not marked yet
Marks lost, by unit
Mark a question to see your score here.
Found a mistake? Please tell us.
