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.📅 An app team plans for 5 days, builds for 11 days, tests for 1 days and releases on 1 more day. How many days does the whole project take?
- 2.👆 What kind of event is this: the user types a letter? (a) a load event (b) a timer event (c) a tap event (d) a text event
-
3.🧪 One test case fails. Which one?
🚚 Rule: delivery is free (0) when the order is 500 or more; otherwise it costs 40.
function delivery(total) {
if (total > 500) {
return 0;
}
return 40;
}
Test 1: delivery(650) → expected 0
Test 2: delivery(500) → expected 0
Test 3: delivery(300) → expected 40 (a) Test 2 (b) Test 1 (c) Test 3 -
4.📊 Survey: which problem bugs you most? How many students voted in all?
wasting pocket money: 5 votes
forgetting birthdays: 6 votes
forgetting homework: 7 votes - 5.Which of these is true of a website? (a) updates from the store (b) has a home-screen icon (c) is installed on a phone (d) needs no installing
- 6.True or false: a shared to-do list fits saving on the phone. (a) True (b) False
- 7.🗒️ You are planning version 1 of a quiz app. Which feature is a MUST-HAVE? (a) background music (b) confetti effects (c) show a question (d) an avatar shop
-
8.🧰 A museum app works out the entry fee. What number does this code show?
function fee(age) {
if (age < 5) {
return 0;
}
return 30;
}
show(fee(1) + fee(5)); - 9.🧭 Which part of navigation undoes one move? (a) a tab bar (b) the back button (c) a menu button
- 10.🧩 Scores, notes and settings that an app keeps are called ___. (a) tabs (b) screens (c) data (d) buttons
- 11.True or false: a bill splitter solves a real problem. (a) False (b) True
- 12.Which of these is an output? (a) adding up a bill (b) a pop-up message (c) working out a tip (d) checking a password
- 13.🧩 In an app, what is tap to go Next? (a) an input (b) data (c) a screen (d) a button
-
14.👆 The user taps the button 6 times. What number does the label show now?
let likes = 0;
button.onTap = function () {
if (likes < 2) {
likes = likes + 1;
}
label.text = likes;
}; -
15.🐞 This code has a bug. What number SHOULD it show, if every line did what its comment says?
line 1: let coins = 42; // start at 42
line 2: coins = coins * 2; // double it
line 3: coins = coins + 2; // double it
line 4: show(coins); // show it - 16.💡 Does an app idea like a lost-and-found board solve a real problem? (a) No (b) Yes
- 17.Which of these is processing? (a) tapping a button (b) a pop-up message (c) adding up a bill (d) a buzz (vibration)
-
18.🧪 How many of these test cases pass?
📝 Rule: a quiz is passed with 8 or more right answers.
function result(right) {
if (right > 8) {
return "Pass";
}
return "Try again";
}
Test 1: result(13) → expected Pass
Test 2: result(10) → expected Pass
Test 3: result(7) → expected Try again - 19.🎯 Is this a user need or a feature: a dark mode switch? (a) a user need (b) a feature
- 20.🗂️ What kind of app is a torch? (a) a health app (b) a tool app (c) a game (d) a learning app
- 21.True or false: a racing challenge is a learning app. (a) True (b) False
- 22.⚙️ In an app, is sorting the scores an input, processing or an output? (a) output (b) processing (c) input
- 23.🔢 In a photo-post flow, which comes first: “post the photo” or “take the photo”? (a) take the photo (b) post the photo
- 24.True or false: the user types a letter is a load event. (a) False (b) True
-
25.🔀 What does this PIN rule show?
let pin = "8633";
if (pin.length === 4) {
show("PIN saved");
} else {
show("Use 4 digits");
} (a) PIN saved (b) Use 4 digits - 26.🔢 In a photo-post flow, what comes right after “open the camera screen”? (a) write a caption (b) add a filter (c) take the photo (d) post the photo
- 27.🔍 Which is the odd one out? (a) text that can grow (b) fast-flashing lights (c) strong colour contrast (d) labels on every icon
- 28.Which of these fits saving in the cloud? (a) a draft you are typing (b) your last game level (c) photos on two devices (d) notes to read offline
- 29.Which of these app ideas solves a real problem? (a) a button with no action (b) a blank grey screen (c) an app that just says hi (d) a bill splitter
-
30.👆 Two designs for the same task (each arrow is one tap). Which needs FEWER taps?
Design A: Home → Pay → Pens → Cart → Search → Address → Size
Design B: Home → Search → Cart → Pay (a) Design A (b) Design B -
31.📊 Survey: which problem bugs you most? How many more votes did “losing water bottles” get than “no quiet study place”?
missing the bus: 10 votes
losing water bottles: 19 votes
no quiet study place: 5 votes - 32.True or false: a pocket-money tracker is the best fit for a teen whose money runs out by Friday. (a) True (b) False
-
33.👆 Two designs for the same task (each arrow is one tap). Which needs FEWER taps?
Design A: Home → Shop → Cart → Size → Item → Search → Offers
Design B: Home → Shop → Address → Menu → Results (a) Design B (b) Design A -
34.🧩 How many buttons does this app screen have?
[title] Order Snacks
[slider] Volume
[button] Start
[text box] Due date
[button] Cancel
[button] Save - 35.👆 An event in an app is ___. (a) a colour theme (b) an app store (c) a kind of list (d) something that happens
-
36.🧪 How many of these test cases pass?
🎟️ Rule: a ticket costs 50 for children under 8, and 100 for everyone else.
function price(age) {
if (age < 8) {
return 50;
}
return 100;
}
Test 1: price(13) → expected 100
Test 2: price(6) → expected 50
Test 3: price(16) → expected 100 -
37.⚙️ Which line does the processing (works out the answer)?
line 1: let km = 12; // typed by the user
line 2: let metres = km * 1000;
line 3: show(metres); (a) line 2 (b) line 1 (c) line 3 - 38.🛠️ At which stage do you spot a problem to solve? (a) the plan stage (b) the release stage (c) the idea stage (d) the build stage
-
39.🧪 What is the ACTUAL result of Test 1?
🎟️ Rule: a ticket costs 50 for children under 10, and 100 for everyone else.
function price(age) {
if (age < 10) {
return 50;
}
return 100;
}
Test 1: price(6) → expected 50
Test 2: price(15) → expected 100
Test 3: price(12) → expected 100 - 40.🧩 Which part lets the user give the app information? (a) a title (b) a logo (c) an input (d) an icon
Answer key
- 18
- a text event
- Test 2
- 18
- needs no installing
- False
- show a question
- 30
- the back button
- data
- True
- a pop-up message
- a button
- 2
- 168
- Yes
- adding up a bill
- 3
- a feature
- a tool app
- False
- processing
- take the photo
- False
- PIN saved
- take the photo
- fast-flashing lights
- photos on two devices
- a bill splitter
- Design B
- 14
- True
- Design B
- 3
- something that happens
- 3
- line 2
- the idea stage
- 50
- an input
Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students