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.🐞 This code has a bug. What number SHOULD it show, if every line did what its comment says?
line 1: let stars = 34; // start at 34
line 2: stars = stars + 2; // add 2
line 3: stars = stars - 5; // take away 4
line 4: show(stars); // show it -
2.🧪 How many of these test cases pass?
🎟️ 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(17) → expected 100
Test 2: price(7) → expected 50
Test 3: price(15) → expected 100 -
3.🔁 What number does this code show?
let scores = [93, 36, 15];
let count = 0;
for (let i = 0; i < scores.length; i++) {
if (scores[i] >= 40) {
count = count + 1;
}
}
show(count); - 4.🗒️ You are planning version 1 of a water reminder. Which feature is a MUST-HAVE? (a) set a reminder time (b) share your streak (c) custom alert sounds (d) water animations
- 5.Which of these is processing? (a) a result on screen (b) a beep sound (c) working out a tip (d) a buzz (vibration)
-
6.🧪 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(9) → expected Pass
Test 2: result(8) → expected Pass
Test 3: result(7) → expected Try again (a) Test 3 (b) Test 1 (c) Test 2 - 7.♿ Does this help everyone, or make the app harder to use: captions on videos? (a) makes it harder (b) helps everyone
-
8.⚙️ What number does this app show?
let price = 30; // typed by the user
let qty = 2; // typed by the user
let total = price * qty;
show(total); - 9.🎯 Is this a user need or a feature: a reminder alarm? (a) a feature (b) a user need
-
10.🧰 What number does this code show?
function points(stars) {
return stars * 10 + 5;
}
show(points(2) + points(1)); - 11.🧩 In an app, what is today’s step count? (a) data (b) a screen (c) an input (d) a button
-
12.📊 Survey: which problem bugs you most? How many more votes did “no quiet study place” get than “forgetting birthdays”?
losing water bottles: 4 votes
forgetting birthdays: 17 votes
no quiet study place: 21 votes - 13.🛠️ At which stage do you write the code? (a) the test stage (b) the build stage (c) the idea stage (d) the release stage
- 14.🧭 Which part of navigation hides extra links? (a) a tab bar (b) the back button (c) a menu button
- 15.🧑 Who is an app really made for? (a) its users (b) its charger (c) its coder only (d) its icon
- 16.🧰 What is a function? (a) a type of phone (b) a named block of code (c) a list of colours (d) a screen size
-
17.🖼️ In this wireframe (top to bottom), which part is at the very bottom?
[ top bar ]
[ tab bar ]
[ big picture ]
[ list of items ] (a) top bar (b) list of items (c) tab bar (d) big picture - 18.🔍 Which is the odd one out? (a) an alarm clock (b) a times-table quiz (c) a spelling coach (d) a flashcard trainer
- 19.🗒️ You are planning version 1 of a pocket-money tracker. Which feature is a MUST-HAVE? (a) add money received (b) pie-chart colours (c) savings stickers (d) export to a file
- 20.👆 What kind of event is this: a countdown hits zero? (a) a tap event (b) a load event (c) a timer event (d) a text event
-
21.🧭 The app has tabs Home, Search, Profile. You start on Home, then:
1. open “Score card”
2. open “Score card”
3. open “Map”
4. tap the Profile tab
Which screen are you on now? (a) Score card (b) Map (c) Home (d) Profile - 22.🗂️ What kind of app is a calculator? (a) a tool app (b) a game (c) a health app (d) a learning app
-
23.🧪 How many of these test cases pass?
🎟️ Rule: a ticket costs 50 for children under 14, and 100 for everyone else.
function price(age) {
if (age <= 14) {
return 50;
}
return 100;
}
Test 1: price(16) → expected 100
Test 2: price(18) → expected 100
Test 3: price(10) → expected 50 -
24.🧪 How many of these test cases pass?
🚚 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(700) → expected 0
Test 3: delivery(450) → expected 40 -
25.🔁 What number does this code show?
let scores = [9, 15, 1, 5];
let best = 0;
for (let i = 0; i < scores.length; i++) {
if (scores[i] > best) {
best = scores[i];
}
}
show(best); -
26.🚀 Which of these versions is the NEWEST?
1.8.4, 0.22.2, 1.12.2, 1.18.4 (a) 1.18.4 (b) 0.22.2 (c) 1.12.2 (d) 1.8.4 -
27.🐞 This code has a bug. What number SHOULD it show, if every line did what its comment says?
line 1: let coins = 49; // start at 49
line 2: coins = coins + 2; // double it
line 3: coins = coins + 6; // add 6
line 4: show(coins); // show it - 28.👥 A school app has 70 students, 85 teachers and 120 parents as users. Which user group is the biggest? (a) students (b) parents (c) teachers
-
29.🔘 Our rule: buttons are at least 48 px tall. Which button is too small?
Done button: 56 px tall
Start button: 68 px tall
Send button: 28 px tall (a) Done (b) Send (c) Start - 30.🚀 Which version is newer: 3.11.2 or 3.7.0? (a) 3.11.2 (b) 3.7.0
-
31.🧪 How many of these test cases pass?
🎟️ Rule: a ticket costs 50 for children under 13, and 100 for everyone else.
function price(age) {
if (age <= 13) {
return 50;
}
return 100;
}
Test 1: price(13) → expected 100
Test 2: price(18) → expected 100
Test 3: price(11) → expected 50 -
32.🔀 What does this battery rule show?
let battery = 90;
if (battery < 20) {
show("Low battery");
} else {
show("Battery OK");
} (a) Battery OK (b) Low battery - 33.📱 Which one is installed on a phone: an app or a website? (a) an app (b) a website
-
34.🗒️ Version 1 of a bus tracker must be ready in 12 days. How many days are left for extras after the must-haves?
see where the bus is: 4 days
show arrival time: 2 days
pick your bus stop: 5 days - 35.Which of these happens at the test stage? (a) put it on an app store (b) draw the user flow (c) sketch the screens (d) write down the bugs
-
36.💾 What number does this code show?
let lives = 7;
lives = lives - 2;
lives = lives + 2;
show(lives); -
37.⚙️ Which line does the processing (works out the answer)?
line 1: let price = 500; // typed by the user
line 2: let off = 10; // typed by the user
line 3: let pay = price - off;
line 4: show(pay); (a) line 3 (b) line 4 (c) line 2 (d) line 1 - 38.🗂️ What kind of app is a puzzle with levels? (a) a learning app (b) a tool app (c) a game (d) a health app
-
39.🔀 What number does this shop app show?
let total = 660;
if (total > 500) {
total = total - 50;
}
show(total); - 40.👆 What kind of event is this: the search box changes? (a) a load event (b) a timer event (c) a tap event (d) a text event
Answer key
- 32
- 3
- 1
- set a reminder time
- working out a tip
- Test 2
- helps everyone
- 60
- a feature
- 40
- data
- 4
- the build stage
- a menu button
- its users
- a named block of code
- list of items
- an alarm clock
- add money received
- a timer event
- Profile
- a tool app
- 3
- 2
- 15
- 1.18.4
- 104
- parents
- Send
- 3.11.2
- 2
- Battery OK
- an app
- 1
- write down the bugs
- 7
- line 3
- a game
- 610
- a text event
Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students