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.🧭 The app has tabs Lessons, Quiz, Me. You start on Lessons, then:
1. open “Video”
2. tap the Me tab
3. open “Friend list”
4. tap Back
Which screen are you on now? (a) Video (b) Lessons (c) Friend list (d) Me -
2.🐞 Each comment says what its line SHOULD do. Which line has the bug?
line 1: let lives = 30; // start at 30
line 2: lives = lives * 3; // double it
line 3: lives = lives + 4; // add 4
line 4: show(lives); // show it (a) line 1 (b) line 2 (c) line 3 -
3.⚙️ Which line does the processing (works out the answer)?
line 1: let price = 540; // typed by the user
line 2: let off = 50; // typed by the user
line 3: let pay = price - off;
line 4: show(pay); (a) line 2 (b) line 1 (c) line 3 (d) line 4 - 4.🚀 A change from version 1.4.2 to 1.4.3 usually means ___. (a) a big redesign (b) a new app (c) a bug fix (d) a new feature
-
5.⚙️ What number does this app show?
let km = 9; // typed by the user
let metres = km * 1000;
show(metres); -
6.👆 The user taps the button 6 times. What number does the label show now?
let score = 3;
button.onTap = function () {
score = score + 1;
label.text = score;
}; -
7.👆 Two designs for the same task (each arrow is one tap). Which needs FEWER taps?
Design A: Home → Confirm → Size → Search → Item → Menu → Offers
Design B: Home → Address → Offers → Results (a) Design A (b) Design B - 8.🔁 What does a loop do? (a) saves photos (b) repeats code (c) deletes code (d) draws icons
- 9.👥 A clinic app has 250 patients, 180 doctors and 220 nurses as users. How many users does it have in all?
- 10.🔍 Which is the odd one out? (a) a times-table quiz (b) a racing challenge (c) a puzzle with levels (d) a cricket run chase
-
11.🧩 How many inputs (text boxes, switches and sliders) does this screen have?
[title] Settings
[button] Save
[text box] Name
[button] Send - 12.🎯 Which app would help this user most: a student who often misses the school bus? (a) a bus tracker (b) a homework planner (c) a water reminder (d) a recipe finder
-
13.👆 The user taps the button 8 times. What number does the label show now?
let likes = 0;
button.onTap = function () {
if (likes < 3) {
likes = likes + 1;
}
label.text = likes;
}; -
14.🐞 This code has a bug. What number does it ACTUALLY show?
line 1: let coins = 44; // start at 44
line 2: coins = coins - 5; // add 5
line 3: coins = coins * 2; // double it
line 4: coins = coins * 2; // double it
line 5: show(coins); // show it - 15.🗂️ What kind of app is a racing challenge? (a) a health app (b) a tool app (c) a game (d) a learning app
- 16.Which of these is a user need? (a) a share button (b) “I keep missing the bus” (c) a search bar (d) a dark mode switch
-
17.♿ Our rule: text is at least 16 px. How many texts on this screen are too small?
Hint: 10 px
Title: 22 px
Footer: 23 px
Body text: 17 px - 18.🗒️ You are planning version 1 of a bus tracker. Which feature can WAIT for a later version? (a) show arrival time (b) see where the bus is (c) pick your bus stop (d) a dark mode
- 19.🔐 Which permission does a bus tracker really need? (a) the camera (b) location (c) contacts (d) the microphone
- 20.🛠️ At which stage do you try every button? (a) the build stage (b) the plan stage (c) the idea stage (d) the test stage
- 21.✏️ Why draw a wireframe before coding? (a) it adds colours (b) it runs the app (c) changes are quick (d) it saves data
- 22.🧩 What do we call one full page of an app? (a) a screen (b) a cable (c) a variable (d) a battery
- 23.🔀 A screen with no way forward or back is called a ___. (a) home screen (b) tab bar (c) dead end (d) shortcut
-
24.🧪 What is the ACTUAL result of Test 3?
🎟️ Rule: a ticket costs 50 for children under 13, and 100 for everyone else.
function price(age) {
if (age <= 13) {
return 50;
}
return 100;
}
Test 1: price(20) → expected 100
Test 2: price(11) → expected 50
Test 3: price(19) → expected 100 - 25.🗒️ You are planning version 1 of a water reminder. Which feature can WAIT for a later version? (a) see today’s total (b) set a reminder time (c) water animations (d) log a glass of water
- 26.🔍 Which is the odd one out? (a) big touch targets (b) captions on videos (c) strong colour contrast (d) colour as the only clue
-
27.🐞 This code has a bug. What number does it ACTUALLY show?
line 1: let stars = 33; // start at 33
line 2: stars = stars - 2; // take away 2
line 3: stars = stars - 5; // add 5
line 4: show(stars); // show it - 28.🧭 Which part of navigation goes to the last screen? (a) the back button (b) a tab bar (c) a menu button
- 29.🔢 After an app is released, which comes LAST? (a) read user reviews (b) list what to fix (c) release an update (d) fix and improve
-
30.🧩 How many inputs (text boxes, switches and sliders) does this screen have?
[title] Order Snacks
[button] Done
[slider] Text size
[text box] Email - 31.Which of these is a screen? (a) a box to type a name (b) a slider for volume (c) your friends list (d) the settings page
-
32.👆 Two designs for the same task (each arrow is one tap). How many taps does Design B need?
Design A: Home → Search → Shop → Pay → Size
Design B: Home → Offers → Pens → Results → Search → Confirm - 33.True or false: a class leaderboard fits saving in the cloud. (a) True (b) False
- 34.True or false: a pocket-money tracker is the best fit for a teen learning to make snacks. (a) True (b) False
- 35.🌗 Is dark blue on black easy or hard to read on a button? (a) hard to read (b) easy to read
-
36.🧪 What is the ACTUAL result of Test 2?
🚚 Rule: delivery is free (0) when the order is 400 or more; otherwise it costs 40.
function delivery(total) {
if (total > 400) {
return 0;
}
return 40;
}
Test 1: delivery(550) → expected 0
Test 2: delivery(450) → expected 0
Test 3: delivery(300) → expected 40 -
37.👆 The user taps the button 7 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 -
38.📊 Survey: which problem bugs you most? Which problem should your app solve first?
forgetting birthdays: 5 votes
wasting pocket money: 7 votes
forgetting homework: 20 votes (a) wasting pocket money (b) forgetting homework (c) forgetting birthdays -
39.🔁 What number does this code show?
let scores = [11, 5, 7, 2];
let total = 0;
for (let i = 0; i < scores.length; i++) {
total = total + scores[i];
}
show(total); -
40.📊 Survey: which problem bugs you most? How many students voted in all?
forgetting homework: 23 votes
no quiet study place: 24 votes
wasting pocket money: 16 votes
Answer key
- Me
- line 2
- line 3
- a bug fix
- 9000
- 9
- Design B
- repeats code
- 650
- a times-table quiz
- 1
- a bus tracker
- 3
- 156
- a game
- “I keep missing the bus”
- 1
- a dark mode
- location
- the test stage
- changes are quick
- a screen
- dead end
- 100
- water animations
- colour as the only clue
- 26
- the back button
- release an update
- 2
- the settings page
- 5
- True
- False
- hard to read
- 0
- ON
- forgetting homework
- 25
- 63
Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students