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.Which of these requests is fair? (a) torch → contacts (b) calculator → location (c) quiz app → microphone (d) calling app → contacts
- 2.Which of these is a user need? (a) a dark mode switch (b) a share button (c) a search bar (d) “I keep missing the bus”
- 3.🔢 In a sign-up flow, what comes right after “enter the code sent”? (a) open the app (b) type name and email (c) tap “Sign up” (d) see the home screen
- 4.Which of these is a button? (a) the game-over page (b) your friends list (c) tap to go Next (d) today’s step count
-
5.👆 The user taps the button 2 times. What number does the label show now?
let stars = 2;
button.onTap = function () {
stars = stars + 3;
label.text = stars;
}; - 6.🔁 A loop over a list of 5 items runs its body how many times? (a) 6 (b) 1 (c) 4 (d) 5
- 7.🧩 Which input is best for typing your name? (a) a slider (b) a switch (c) a picture (d) a text box
-
8.🧪 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(500) → expected 0
Test 2: delivery(600) → expected 0
Test 3: delivery(350) → expected 40 (a) Test 1 (b) Test 2 (c) Test 3 -
9.🐞 Each comment says what its line SHOULD do. Which line has the bug?
line 1: let coins = 38; // start at 38
line 2: coins = coins + 6; // add 6
line 3: coins = coins - 2; // add 2
line 4: show(coins); // show it (a) line 2 (b) line 3 (c) line 1 -
10.🧪 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(450) → expected 0
Test 2: delivery(500) → expected 0
Test 3: delivery(250) → expected 40 - 11.♿ Does this help everyone, or make the app harder to use: captions on videos? (a) helps everyone (b) makes it harder
-
12.👆 The user taps the button 3 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 - 13.🌗 Is light grey on white easy or hard to read on a button? (a) easy to read (b) hard to read
-
14.♿ Our rule: text is at least 16 px. How many texts on this screen are too small?
Menu: 15 px
Title: 13 px
Body text: 20 px
Footer: 17 px
Hint: 12 px -
15.🔀 What does this PIN rule show?
let pin = "3039";
if (pin.length === 4) {
show("PIN saved");
} else {
show("Use 4 digits");
} (a) Use 4 digits (b) PIN saved - 16.👥 A school app has 115 students, 175 teachers and 220 parents as users. How many more parents than teachers are there?
- 17.🧭 Which part of navigation hides extra links? (a) a tab bar (b) the back button (c) a menu button
-
18.🧰 What number does this code show?
function total(price, qty) {
return price * qty;
}
show(total(95, 4)); - 19.True or false: a class leaderboard fits saving in the cloud. (a) False (b) True
- 20.🔍 Which is the odd one out? (a) the button colours (b) how fast a task is done (c) the theme colours (d) the icon shapes
-
21.🔁 What number does this code show?
let scores = [12, 1, 1, 4];
let total = 0;
for (let i = 0; i < scores.length; i++) {
total = total + scores[i];
}
show(total); - 22.👥 A clinic app has 40 patients, 140 doctors and 250 nurses as users. Which user group is the biggest? (a) patients (b) nurses (c) doctors
- 23.👥 A clinic app has 80 patients, 165 doctors and 20 nurses as users. How many users does it have in all?
- 24.🗒️ You are planning version 1 of a bus tracker. Which feature can WAIT for a later version? (a) pick your bus stop (b) show arrival time (c) change the bus icon (d) see where the bus is
- 25.True or false: the icon shapes is about UX (the experience). (a) True (b) False
-
26.🔁 What number does this code show?
let steps = [1, 5, 11];
let total = 0;
for (let i = 0; i < steps.length; i++) {
total = total + steps[i];
}
show(total); - 27.🌗 Is dark blue on black easy or hard to read on a button? (a) easy to read (b) hard to read
- 28.True or false: the button colours is about UX (the experience). (a) True (b) False
- 29.True or false: a torch is a learning app. (a) False (b) True
-
30.👆 The user types Kabir in nameBox and taps the button 1 time. What does the label show?
button.onTap = function () {
label.text = "Welcome, " + nameBox.text + "!";
}; (a) Welcome! (b) Kabir (c) Welcome, Kabir! (d) Welcome, nameBox.text! -
31.🧭 The app has tabs Lessons, Quiz, Me. You start on Lessons, then:
1. open “Score card”
2. tap the Lessons tab
3. open “Video”
4. tap Back
5. open “Video”
Which screen are you on now? (a) Score card (b) Quiz (c) Video (d) Lessons - 32.🎨 Is this about UI or UX: how fast a task is done? (a) UX (b) UI
- 33.True or false: today’s step count is an input. (a) True (b) False
- 34.🎨 Is this about UI or UX: the button colours? (a) UI (b) UX
-
35.🧩 Which of these is a button on this screen?
[title] Sign Up
[button] Save
[text box] Phone
[slider] Volume (a) Volume (b) Save (c) Phone - 36.Which of these is an output? (a) tapping a button (b) working out a tip (c) taking a photo (d) a buzz (vibration)
- 37.Which of these fits saving on the phone? (a) notes to read offline (b) a class leaderboard (c) a shared to-do list (d) photos on two devices
- 38.💡 Does an app idea like a free study-room finder solve a real problem? (a) Yes (b) No
- 39.True or false: a medicine reminder solves no real problem. (a) True (b) False
- 40.💾 Saving data in the cloud lets you ___. (a) use it on any device (b) never need a password (c) skip the internet (d) shrink the app
Answer key
- calling app → contacts
- “I keep missing the bus”
- see the home screen
- tap to go Next
- 8
- 5
- a text box
- Test 1
- line 3
- 3
- helps everyone
- ON
- hard to read
- 3
- PIN saved
- 45
- a menu button
- 380
- True
- how fast a task is done
- 18
- nurses
- 265
- change the bus icon
- False
- 17
- hard to read
- False
- False
- Welcome, Kabir!
- Video
- UX
- False
- UI
- Save
- a buzz (vibration)
- notes to read offline
- Yes
- False
- use it on any device
Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students