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.🧰 A museum app works out the entry fee. What number does this code show?
function fee(age) {
if (age < 5) {
return 0;
}
return 20;
}
show(fee(10) + fee(3)); - 2.🧑 Who is an app really made for? (a) its coder only (b) its users (c) its charger (d) its icon
- 3.🔐 Is this permission request fair or too much: map app → location? (a) fair (b) too much
- 4.🧩 Which input is best for turning something ON or OFF? (a) a text box (b) a slider (c) a switch (d) a title
- 5.🔀 When does the else part run? (a) when the test is false (b) never (c) always (d) when the test is true
-
6.♿ Our rule: text is at least 16 px. Which text on this screen is too small?
Body text: 26 px
Caption: 9 px
Title: 20 px (a) Title (b) Caption (c) Body text - 7.🧪 Who else should try an app before release? (a) the app icon (b) nobody (c) real users (d) only the coder
- 8.True or false: chat messages to friends fits saving in the cloud. (a) True (b) False
-
9.🔁 What number does this code show?
let scores = [51, 39, 69, 90];
let count = 0;
for (let i = 0; i < scores.length; i++) {
if (scores[i] >= 60) {
count = count + 1;
}
}
show(count); - 10.📅 An app team plans for 5 days, builds for 7 days, tests for 3 days and releases on 1 more day. How many more days does building take than testing?
- 11.💡 Does an app idea like a bill splitter solve a real problem? (a) No (b) Yes
-
12.🗒️ Version 1 of a pocket-money tracker must be ready in 12 days. How many days are left for extras after the must-haves?
add money received: 2 days
add money spent: 3 days
show the balance: 4 days - 13.🧰 What is a function? (a) a type of phone (b) a list of colours (c) a named block of code (d) a screen size
-
14.📊 Survey: which problem bugs you most? How many students voted in all?
wasting pocket money: 5 votes
forgetting birthdays: 4 votes
forgetting homework: 21 votes -
15.💾 What does this code show? (Positions start at 0.)
let songs = ["Monsoon", "Kites", "Stars"];
show(songs[2]); (a) Kites (b) Stars (c) Monsoon - 16.♿ Showing right or wrong only in red and green is a problem for ___. (a) fast typists (b) the battery (c) the server (d) colour-blind users
-
17.🧪 One test case fails. Which one?
📝 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(10) → expected Pass
Test 2: result(8) → expected Pass
Test 3: result(5) → expected Try again (a) Test 1 (b) Test 3 (c) Test 2 - 18.🌗 Is black on yellow easy or hard to read on a button? (a) easy to read (b) hard to read
-
19.🐞 This code has a bug. What number does it ACTUALLY show?
line 1: let lives = 43; // start at 43
line 2: lives = lives * 3; // double it
line 3: lives = lives + 5; // add 5
line 4: show(lives); // show it - 20.True or false: icons with no meaning is poor button design. (a) False (b) True
- 21.🚀 Which version is newer: 2.8.7 or 2.8.18? (a) 2.8.7 (b) 2.8.18
- 22.🔐 Which permission does a homework photo scanner really need? (a) the microphone (b) location (c) the camera (d) contacts
-
23.🔘 Our rule: buttons are at least 48 px tall. Which button is too small?
Next button: 60 px tall
Send button: 48 px tall
Cancel button: 44 px tall (a) Send (b) Cancel (c) Next -
24.🧪 How many of these test cases pass?
🚚 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(300) → expected 40
Test 2: delivery(400) → expected 0
Test 3: delivery(600) → expected 0 - 25.🧭 Which part of navigation hides extra links? (a) a tab bar (b) the back button (c) a menu button
-
26.🔁 What is the LAST line this code shows?
let names = ["Kabir", "Meera", "Aman"];
for (let i = 0; i < names.length; i++) {
show("Hi, " + names[i]);
} (a) Hi, Meera (b) Hi, Kabir (c) Hi, Aman - 27.💡 Which app idea solves this problem: friends argue over who pays? (a) a homework planner (b) a medicine reminder (c) a bill splitter (d) a lost-and-found board
- 28.🛠️ At which stage do you let friends try it? (a) the plan stage (b) the idea stage (c) the build stage (d) the test stage
- 29.🎨 Who should you test the UX with? (a) nobody (b) only yourself (c) real users (d) the app icon
- 30.True or false: you add the buttons at the build stage. (a) False (b) True
- 31.🔁 list.length tells you ___. (a) how many items it has (b) the biggest item (c) the first item (d) the last item
-
32.🐞 This code has a bug. What number does it ACTUALLY show?
line 1: let stars = 33; // start at 32
line 2: stars = stars - 5; // take away 5
line 3: stars = stars * 2; // double it
line 4: show(stars); // show it - 33.🗒️ A to-do app with no “add a task” feature is ___. (a) a nice extra (b) missing a must-have (c) ready to release (d) well planned
- 34.Which of these is a user need? (a) a reminder alarm (b) “Small text is hard” (c) a search bar (d) a dark mode switch
- 35.🗒️ You are planning version 1 of a bus tracker. Which feature can WAIT for a later version? (a) see where the bus is (b) change the bus icon (c) pick your bus stop (d) show arrival time
- 36.🔀 What does if / else let an app do? (a) draw a screen (b) save a photo (c) repeat forever (d) pick one of two actions
-
37.📊 Survey: which problem bugs you most? How many students voted in all?
forgetting birthdays: 9 votes
losing water bottles: 22 votes
no quiet study place: 24 votes - 38.🔐 Which permission does a birthday list of friends really need? (a) contacts (b) the microphone (c) location (d) the camera
-
39.🧰 What does this code show?
function greet(name) {
return "Well done, " + name + "!";
}
show(greet("Riya")); (a) Well done, Riya! (b) Well done, name! (c) Riya (d) greet -
40.🧰 What number does this code show?
function total(price, qty) {
return price * qty;
}
show(total(20, 4));
Answer key
- 20
- its users
- fair
- a switch
- when the test is false
- Caption
- real users
- True
- 2
- 4
- Yes
- 3
- a named block of code
- 30
- Stars
- colour-blind users
- Test 2
- easy to read
- 134
- True
- 2.8.18
- the camera
- Cancel
- 2
- a menu button
- Hi, Aman
- a bill splitter
- the test stage
- real users
- True
- how many items it has
- 56
- missing a must-have
- “Small text is hard”
- change the bus icon
- pick one of two actions
- 55
- contacts
- Well done, Riya!
- 80
Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students