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 app idea solves this problem: bottles go missing at school? (a) a lost-and-found board (b) a medicine reminder (c) a homework planner (d) a bill splitter
- 2.🔢 In a sign-up flow, which comes LAST? (a) open the app (b) make a password (c) tap “Sign up” (d) see the home screen
-
3.🗒️ Version 1 of a pocket-money tracker must be ready in 13 days. How many days are left for extras after the must-haves?
add money received: 4 days
add money spent: 3 days
show the balance: 2 days - 4.True or false: chat messages to friends fits saving on the phone. (a) True (b) False
- 5.Which of these fits saving on the phone? (a) a draft you are typing (b) a class leaderboard (c) chat messages to friends (d) photos on two devices
- 6.🔢 In a photo-post flow, which comes LAST? (a) open the camera screen (b) add a filter (c) write a caption (d) post the photo
-
7.🧰 What number does this code show?
function total(price, qty) {
return price * qty;
}
show(total(75, 5)); - 8.Which of these requests asks for too much? (a) map app → location (b) voice notes → microphone (c) calling app → contacts (d) torch → contacts
- 9.🧑 Who is an app really made for? (a) its icon (b) its coder only (c) its charger (d) its users
- 10.🚀 A privacy policy tells users ___. (a) the screen size (b) the app’s colours (c) the app’s price (d) what data is collected
- 11.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) has a web address
- 12.👆 What kind of event is this: the user presses Save? (a) a tap event (b) a timer event (c) a text event (d) a load event
-
13.👆 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 - 14.🎨 UI stands for user ___. (a) idea (b) interface (c) input (d) internet
- 15.⚙️ In an app, is sorting the scores an input, processing or an output? (a) output (b) input (c) processing
-
16.🧪 One test case fails. Which one?
🎟️ Rule: a ticket costs 50 for children under 11, and 100 for everyone else.
function price(age) {
if (age <= 11) {
return 50;
}
return 100;
}
Test 1: price(12) → expected 100
Test 2: price(10) → expected 50
Test 3: price(11) → expected 100 (a) Test 3 (b) Test 1 (c) Test 2 - 17.True or false: a weather-near-me app needs your contacts. (a) False (b) True
- 18.🗒️ You are planning version 1 of a homework planner. Which feature is a MUST-HAVE? (a) share tasks to friends (b) pick a theme colour (c) earn stickers (d) see tasks by day
-
19.🐞 This code has a bug. What number does it ACTUALLY show?
line 1: let stars = 33; // start at 33
line 2: stars = stars - 5; // take away 3
line 3: stars = stars - 3; // take away 3
line 4: stars = stars - 2; // take away 2
line 5: show(stars); // show it - 20.♿ Does this help everyone, or make the app harder to use: colour as the only clue? (a) helps everyone (b) makes it harder
- 21.🚀 Your app is at version 4.7.4. The next release fixes a small bug. What is its version number? (a) 4.8.0 (b) 4.8.4 (c) 4.7.5 (d) 5.0.0
- 22.🔢 After an app is released, which comes FIRST? (a) read user reviews (b) fix and improve (c) release an update (d) list what to fix
-
23.🧪 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(600) → expected 0
Test 2: delivery(400) → expected 0
Test 3: delivery(350) → expected 40 - 24.True or false: “captions on videos” helps everyone use the app. (a) True (b) False
-
25.🧭 The app has tabs Home, Search, Profile. You start on Home, then:
1. open “Score card”
2. tap the Home tab
3. open “Match report”
4. tap the Home tab
5. tap the Profile tab
How many times must you tap Back to reach the main screen of this tab? -
26.🧩 How many inputs (text boxes, switches and sliders) does this screen have?
[title] Order Snacks
[text box] Email
[text box] Subject
[text box] Phone
[button] Done - 27.🗂️ What kind of app is a word battle? (a) a learning app (b) a health app (c) a tool app (d) a game
- 28.⚙️ In an app, is taking a photo an input, processing or an output? (a) processing (b) output (c) input
- 29.🧩 In an app, what is the settings page? (a) a screen (b) a button (c) an input (d) data
- 30.🧭 Why should every screen show where you are? (a) so users do not get lost (b) to look busy (c) to hide the menu (d) to use more battery
- 31.🔍 Which is the odd one out? (a) colour as the only clue (b) tiny tap areas (c) fast-flashing lights (d) captions on videos
- 32.Which of these is true of a final design? (a) has no real colours (b) is a quick sketch (c) looks like the real app (d) uses plain grey boxes
-
33.🧪 What is the ACTUAL result of Test 1?
🚚 Rule: delivery is free (0) when the order is 800 or more; otherwise it costs 40.
function delivery(total) {
if (total > 800) {
return 0;
}
return 40;
}
Test 1: delivery(900) → expected 0
Test 2: delivery(750) → expected 40
Test 3: delivery(800) → expected 0 - 34.Which of these fits saving in the cloud? (a) your last game level (b) a draft you are typing (c) chat messages to friends (d) the sound on/off setting
- 35.Which of these fits saving in the cloud? (a) photos on two devices (b) the sound on/off setting (c) notes to read offline (d) a draft you are typing
-
36.🐞 This code has a bug. What number does it ACTUALLY show?
line 1: let points = 36; // start at 34
line 2: points = points - 2; // take away 2
line 3: points = points + 5; // add 5
line 4: show(points); // show it -
37.🔁 What number does this code show?
let scores = [6, 7, 2, 7];
let best = 0;
for (let i = 0; i < scores.length; i++) {
if (scores[i] > best) {
best = scores[i];
}
}
show(best); -
38.👆 The user types Riya in nameBox and taps the button 1 time. What does the label show?
button.onTap = function () {
label.text = "Hello, " + nameBox.text + "!";
}; (a) Hello, nameBox.text! (b) Riya (c) Hello! (d) Hello, Riya! -
39.👆 Two designs for the same task (each arrow is one tap). How many taps does Design A need?
Design A: Home → Search → Pay → Offers → Menu
Design B: Home → Item → Offers -
40.🔀 What does this battery rule show?
let battery = 15;
if (battery < 20) {
show("Low battery");
} else {
show("Battery OK");
} (a) Battery OK (b) Low battery
Answer key
- a lost-and-found board
- see the home screen
- 4
- False
- a draft you are typing
- post the photo
- 375
- torch → contacts
- its users
- what data is collected
- has a web address
- a tap event
- ON
- interface
- processing
- Test 3
- False
- see tasks by day
- 23
- makes it harder
- 4.7.5
- read user reviews
- 40
- True
- 0
- 3
- a game
- input
- a screen
- so users do not get lost
- captions on videos
- looks like the real app
- 0
- chat messages to friends
- photos on two devices
- 39
- 7
- Hello, Riya!
- 4
- Low battery
Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students