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 screen has 10 icon buttons. Only 2 of them have a text label for screen readers. How many still need a label?
- 2.🎯 An app for “everyone” with no clear user usually ___. (a) wins every prize (b) helps nobody well (c) is easy to build (d) needs no testing
-
3.🔁 What number does this code show?
let steps = [1, 3, 20, 9];
let total = 0;
for (let i = 0; i < steps.length; i++) {
total = total + steps[i];
}
show(total); - 4.🎨 Who should you test the UX with? (a) only yourself (b) nobody (c) the app icon (d) real users
- 5.🔢 When you make an app, which comes first: “release it” or “test the app”? (a) release it (b) test the app
- 6.🗒️ You are planning version 1 of a water reminder. Which feature is a MUST-HAVE? (a) water animations (b) custom alert sounds (c) share your streak (d) set a reminder time
- 7.🗒️ You are planning version 1 of a homework planner. Which feature is a MUST-HAVE? (a) pick a theme colour (b) share tasks to friends (c) see tasks by day (d) earn stickers
-
8.🔁 What number does this code show?
let runs = [7, 3, 16, 15];
let total = 0;
for (let i = 0; i < runs.length; i++) {
total = total + runs[i];
}
show(total); -
9.🗒️ Version 1 of a water reminder must be ready in 11 days. How many days are left for extras after the must-haves?
set a reminder time: 1 days
log a glass of water: 4 days
see today’s total: 2 days - 10.True or false: a wireframe shows the real fonts. (a) True (b) False
- 11.True or false: tapping a button is an input. (a) True (b) False
-
12.🧩 How many buttons does this app screen have?
[title] Add Homework
[button] Help
[text box] Age
[button] Save - 13.📅 An app team plans for 3 days, builds for 9 days, tests for 1 days and releases on 1 more day. Planning starts on day 1. On which day does building finish?
-
14.🧭 The app has tabs Lessons, Quiz, Me. You start on Lessons, then:
1. tap the Lessons tab
2. tap the Lessons tab
3. tap the Quiz tab
How many times must you tap Back to reach the main screen of this tab? - 15.🔢 In a quiz-app flow, which comes first: “see the final score” or “pick an answer”? (a) pick an answer (b) see the final score
- 16.Which of these makes the app harder to use? (a) big touch targets (b) strong colour contrast (c) colour as the only clue (d) labels on every icon
- 17.🔀 What is a user flow? (a) a type of font (b) a colour theme (c) the path through screens (d) a charging cable
-
18.💾 What does this code show? (Positions start at 0.)
let notes = ["Art", "Music", "Science", "Hindi", "Maths"];
show(notes[3]); (a) Hindi (b) Science (c) Art (d) Music -
19.🧪 How many of these test cases pass?
📝 Rule: a quiz is passed with 5 or more right answers.
function result(right) {
if (right > 5) {
return "Pass";
}
return "Try again";
}
Test 1: result(6) → expected Pass
Test 2: result(5) → expected Pass
Test 3: result(4) → expected Try again -
20.🧪 One test case fails. Which one?
🎟️ Rule: a ticket costs 50 for children under 9, and 100 for everyone else.
function price(age) {
if (age <= 9) {
return 50;
}
return 100;
}
Test 1: price(12) → expected 100
Test 2: price(9) → expected 100
Test 3: price(6) → expected 50 (a) Test 3 (b) Test 2 (c) Test 1 - 21.True or false: a blank grey screen solves a real problem. (a) False (b) True
-
22.🧩 How many inputs (text boxes, switches and sliders) does this screen have?
[title] Add Homework
[button] Back
[button] Start
[text box] Email
[text box] City
[button] Send
[text box] Name -
23.📊 Survey: which problem bugs you most? How many more votes did “forgetting homework” get than “missing the bus”?
wasting pocket money: 12 votes
missing the bus: 4 votes
forgetting homework: 9 votes - 24.🌗 Is dark blue on black easy or hard to read on a button? (a) hard to read (b) easy to read
-
25.🐞 This code has a bug. What number does it ACTUALLY show?
line 1: let lives = 48; // start at 45
line 2: lives = lives + 6; // add 6
line 3: lives = lives * 2; // double it
line 4: lives = lives + 2; // add 2
line 5: show(lives); // show it -
26.🐞 This code has a bug. What number does it ACTUALLY show?
line 1: let score = 33; // start at 32
line 2: score = score * 2; // double it
line 3: score = score - 4; // take away 4
line 4: show(score); // show it -
27.🧰 What number does this code show?
function total(price, qty) {
return price * qty;
}
show(total(10, 2)); - 28.🧩 Which part lets the user give the app information? (a) an input (b) a title (c) a logo (d) an icon
-
29.👆 The user taps the button 6 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) OFF (b) ON -
30.🐞 Each comment says what its line SHOULD do. Which line has the bug?
line 1: let lives = 33; // start at 33
line 2: lives = lives - 5; // add 5
line 3: lives = lives * 2; // double it
line 4: show(lives); // show it (a) line 2 (b) line 3 (c) line 1 - 31.True or false: a tiny 20 px button is good button design. (a) True (b) False
-
32.💾 What number does this code show?
let points = 9;
points = points - 4;
points = points + 5;
show(points); - 33.🔢 In a photo-post flow, which comes first: “add a filter” or “post the photo”? (a) add a filter (b) post the photo
- 34.💾 In most code, the first item of a list is at position ___. (a) 1 (b) 10 (c) 0 (d) 2
- 35.📱 Where do people usually download phone apps from? (a) a web server (b) an app store (c) a printer (d) a charger
- 36.Which of these is a user need? (a) a share button (b) a reminder alarm (c) “I keep missing the bus” (d) a search bar
- 37.🔢 When you make an app, what comes right after “plan the screens”? (a) test the app (b) build the app (c) get an idea (d) release it
-
38.🧰 What number does this code show?
function double(n) {
return n * 2;
}
show(double(6)); - 39.👆 “On tap → do this” links an event to ___. (a) a charger (b) a web address (c) a font (d) an action
-
40.🧰 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(4) + fee(8));
Answer key
- 8
- helps nobody well
- 33
- real users
- test the app
- set a reminder time
- see tasks by day
- 41
- 4
- False
- True
- 2
- 12
- 0
- pick an answer
- colour as the only clue
- the path through screens
- Hindi
- 2
- Test 2
- False
- 3
- 5
- hard to read
- 110
- 62
- 20
- an input
- OFF
- line 2
- False
- 10
- add a filter
- 0
- an app store
- “I keep missing the bus”
- build the app
- 12
- an action
- 30
Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students