App Dev Worksheet: Final Test
Developer's tip (Plan, design, build, check): Find the topic: what apps are, designing apps, or logic and building. Read every screen, list or code line carefully, top to bottom. For code, write each value down step by step and check it again.
NameDateTime takenScore ___ / 40
- 1.True or false: a website is installed on a phone. (a) True (b) False
- 2.🧭 Which part of navigation opens a list of pages? (a) a tab bar (b) a menu button (c) the back button
- 3.🔍 Which is the odd one out? (a) big touch targets (b) labels on every icon (c) captions on videos (d) sudden loud sounds
-
4.🗒️ Version 1 of a pocket-money tracker must be ready in 17 days. How many days are left for extras after the must-haves?
add money received: 3 days
add money spent: 3 days
show the balance: 5 days -
5.🔁 What number does this code show?
let runs = [64, 34, 40, 88, 59];
let count = 0;
for (let i = 0; i < runs.length; i++) {
if (runs[i] >= 70) {
count = count + 1;
}
}
show(count); -
6.🔀 What does this sign-up rule show?
let age = 16;
if (age >= 13) {
show("Welcome!");
} else {
show("Ask a parent");
} (a) Welcome! (b) Ask a parent -
7.👆 The user taps the button 5 times. What does the label show now?
let on = false;
button.onTap = function () {
on = !on;
if (on) {
label.text = "ON";
} else {
label.text = "OFF";
}
}; (a) ON (b) OFF - 8.Which of these is about UI (the look)? (a) how easy sign-up is (b) how fast a task is done (c) the theme colours (d) how many taps it takes
- 9.📅 An app team plans for 4 days, builds for 10 days, tests for 3 days and releases on 1 more day. Planning starts on day 1. On which day does building finish?
- 10.📱 Which one opens from a link: an app or a website? (a) an app (b) a website
- 11.🎯 Is this a user need or a feature: a dark mode switch? (a) a feature (b) a user need
-
12.🧰 What number does this code show?
function double(n) {
return n * 2;
}
show(double(8)); - 13.🔁 Why use a loop to show 100 messages? (a) it is slower (b) less code to write (c) it uses more lines (d) it hides them
- 14.True or false: the font size is about UX (the experience). (a) True (b) False
-
15.🐞 This code has a bug. What number SHOULD it show, if every line did what its comment says?
line 1: let lives = 30; // start at 30
line 2: lives = lives - 1; // take away 1
line 3: lives = lives + 2; // take away 2
line 4: show(lives); // show it -
16.🔀 What does this battery rule show?
let battery = 56;
if (battery < 20) {
show("Low battery");
} else {
show("Battery OK");
} (a) Low battery (b) Battery OK -
17.🔘 Our rule: buttons are at least 48 px tall. Which button is too small?
Start button: 28 px tall
Send button: 48 px tall
Save button: 56 px tall
Back button: 52 px tall (a) Start (b) Save (c) Send (d) Back -
18.🔀 What number does this shop app show?
let total = 860;
if (total > 500) {
total = total - 50;
}
show(total); -
19.🧪 One test case fails. Which one?
🎟️ Rule: a ticket costs 50 for children under 14, and 100 for everyone else.
function price(age) {
if (age <= 14) {
return 50;
}
return 100;
}
Test 1: price(20) → expected 100
Test 2: price(13) → expected 50
Test 3: price(14) → expected 100 (a) Test 2 (b) Test 3 (c) Test 1 - 20.Which of these is an output? (a) working out a tip (b) adding up a bill (c) a result on screen (d) speaking a command
- 21.True or false: a bus tracker is the best fit for a grandparent with weak eyesight. (a) False (b) True
- 22.True or false: a pop-up message is an output. (a) True (b) False
- 23.📴 Which of these can often still work with no internet? (a) an online search (b) a new website (c) a video call (d) an installed app
- 24.🗒️ When should nice-to-have features be built? (a) after the must-haves (b) before anything (c) on day one (d) never
-
25.🐞 This code has a bug. What number does it ACTUALLY show?
line 1: let score = 31; // start at 31
line 2: score = score + 2; // double it
line 3: score = score - 3; // take away 3
line 4: score = score - 5; // take away 5
line 5: show(score); // show it - 26.Which of these is a screen? (a) tap to Start (b) the settings page (c) tap to Save (d) your friends list
-
27.🧩 How many buttons does this app screen have?
[title] New Note
[button] Save
[button] Cancel
[text box] Age
[text box] Subject
[slider] Text size - 28.👆 What kind of event is this: one second passes? (a) a load event (b) a timer event (c) a text event (d) a tap event
-
29.⚙️ What number does this app show?
let km = 10; // typed by the user
let metres = km * 1000;
show(metres); -
30.🐞 This code has a bug. What number SHOULD it show, if every line did what its comment says?
line 1: let coins = 36; // start at 34
line 2: coins = coins + 4; // add 4
line 3: coins = coins * 2; // double it
line 4: show(coins); // show it - 31.True or false: working out a tip is processing. (a) False (b) True
- 32.True or false: a clear word like Save is good button design. (a) False (b) True
-
33.👆 The user taps the button 6 times. What number does the label show now?
let stars = 5;
button.onTap = function () {
stars = stars + 1;
label.text = stars;
}; -
34.♿ Our rule: text is at least 16 px. Which text on this screen is too small?
Footer: 18 px
Title: 17 px
Menu: 28 px
Label: 10 px (a) Label (b) Footer (c) Title (d) Menu -
35.🧭 The app has tabs Home, Search, Profile. You start on Home, then:
1. open “Match report”
2. open “Edit photo”
3. tap Back
Which screen are you on now? (a) Search (b) Match report (c) Home (d) Edit photo -
36.🧪 How many of these test cases pass?
🚚 Rule: delivery is free (0) when the order is 600 or more; otherwise it costs 40.
function delivery(total) {
if (total >= 600) {
return 0;
}
return 40;
}
Test 1: delivery(850) → expected 0
Test 2: delivery(750) → expected 0
Test 3: delivery(450) → expected 40 - 37.True or false: “tiny tap areas” makes the app harder to use. (a) False (b) True
- 38.True or false: a date picker is data. (a) True (b) False
-
39.⚙️ Which line does the processing (works out the answer)?
line 1: let price = 210; // typed by the user
line 2: let off = 20; // typed by the user
line 3: let pay = price - off;
line 4: show(pay); (a) line 1 (b) line 4 (c) line 3 (d) line 2 - 40.Which of these is an input? (a) a pop-up message (b) taking a photo (c) adding up a bill (d) a buzz (vibration)
Answer key
- False
- a menu button
- sudden loud sounds
- 6
- 1
- Welcome!
- ON
- the theme colours
- 14
- a website
- a feature
- 16
- less code to write
- False
- 27
- Battery OK
- Start
- 810
- Test 3
- a result on screen
- False
- True
- an installed app
- after the must-haves
- 25
- the settings page
- 2
- a timer event
- 10000
- 76
- True
- True
- 11
- Label
- Match report
- 3
- True
- False
- line 3
- taking a photo
Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students