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.🐞 Each comment says what its line SHOULD do. Which line has the bug?
line 1: let stars = 41; // start at 41
line 2: stars = stars - 5; // add 5
line 3: stars = stars - 2; // take away 2
line 4: stars = stars + 2; // add 2
line 5: show(stars); // show it (a) line 3 (b) line 2 (c) line 4 (d) line 1 - 2.🧩 In an app, what is tap to Send? (a) a screen (b) an input (c) data (d) a button
-
3.👆 The user taps the button 6 times. What number does the label show now?
let coins = 2;
button.onTap = function () {
coins = coins + 4;
label.text = coins;
}; -
4.🗒️ Version 1 of a homework planner must be ready in 11 days. How many days are left for extras after the must-haves?
add a homework task: 1 days
set a due date: 4 days
see tasks by day: 2 days - 5.👥 A clinic app has 25 patients, 95 doctors and 130 nurses as users. Which user group is the biggest? (a) nurses (b) doctors (c) patients
- 6.🔁 A loop over a list of 5 items runs its body how many times? (a) 6 (b) 1 (c) 5 (d) 4
-
7.🔁 What number does this code show?
let runs = [59, 36, 36, 37];
let count = 0;
for (let i = 0; i < runs.length; i++) {
if (runs[i] >= 60) {
count = count + 1;
}
}
show(count); - 8.🔐 Which permission does a barcode scanner really need? (a) the microphone (b) location (c) contacts (d) the camera
- 9.♿ Does this help everyone, or make the app harder to use: labels on every icon? (a) helps everyone (b) makes it harder
- 10.🔢 When you make an app, which comes first: “plan the screens” or “get an idea”? (a) plan the screens (b) get an idea
- 11.🔁 Why use a loop to show 100 messages? (a) it uses more lines (b) it is slower (c) less code to write (d) it hides them
-
12.🔁 What number does this code show?
let marks = [63, 12, 20, 94];
let count = 0;
for (let i = 0; i < marks.length; i++) {
if (marks[i] >= 50) {
count = count + 1;
}
}
show(count); -
13.🐞 Each comment says what its line SHOULD do. Which line has the bug?
line 1: let coins = 35; // start at 35
line 2: coins = coins - 2; // take away 2
line 3: coins = coins * 3; // double it
line 4: show(coins); // show it (a) line 3 (b) line 1 (c) line 2 - 14.🔢 After an app is released, what comes right after “list what to fix”? (a) release an update (b) test it again (c) read user reviews (d) fix and improve
-
15.🧭 The app has tabs Home, Search, Profile. You start on Home, then:
1. open “Score card”
2. tap the Profile tab
3. open “Match report”
4. tap Back
5. open “Friend list”
How many times must you tap Back to reach the main screen of this tab? -
16.⚙️ Which line does the processing (works out the answer)?
line 1: let price = 540; // typed by the user
line 2: let off = 50; // typed by the user
line 3: let pay = price - off;
line 4: show(pay); (a) line 2 (b) line 1 (c) line 4 (d) line 3 -
17.🧩 Which of these is a button on this screen?
[title] Add Homework
[button] Start
[text box] Age
[switch] Sound
[button] Back
[button] Cancel
[text box] Email (a) Email (b) Back (c) Sound (d) Age -
18.🔀 What does this sign-up rule show?
let age = 14;
if (age >= 13) {
show("Welcome!");
} else {
show("Ask a parent");
} (a) Ask a parent (b) Welcome! -
19.🔀 Which badge does this quiz app show?
let marks = 94;
if (marks >= 80) {
show("Gold");
} else if (marks >= 50) {
show("Silver");
} else {
show("Bronze");
} (a) Bronze (b) Gold (c) Silver -
20.👆 Two designs for the same task (each arrow is one tap). How many taps does the shorter design save?
Design A: Home → Item → Pay → Search → Results → Size
Design B: Home → Pens → Cart → Size → Shop -
21.🔁 What number does this code show?
let scores = [1, 13, 13];
let total = 0;
for (let i = 0; i < scores.length; i++) {
total = total + scores[i];
}
show(total); -
22.👆 Two designs for the same task (each arrow is one tap). Which needs FEWER taps?
Design A: Home → Item → Address
Design B: Home → Confirm → Address → Item → Cart → Menu → Size (a) Design B (b) Design A -
23.🖼️ In this wireframe (top to bottom), which part is at the very bottom?
[ menu icon ]
[ list of items ]
[ Save button ]
[ filter buttons ]
[ top bar ] (a) filter buttons (b) top bar (c) list of items (d) Save button -
24.🧩 Which of these is a button on this screen?
[title] Sign Up
[switch] Dark mode
[button] Done
[slider] Volume
[text box] City (a) Done (b) Dark mode (c) City (d) Volume - 25.Which of these happens at the build stage? (a) add the buttons (b) sketch the screens (c) spot a problem to solve (d) write down the bugs
- 26.✏️ Is this true of a wireframe or of a final design: has no real colours? (a) a final design (b) a wireframe
- 27.👆 What kind of event is this: the user types a letter? (a) a text event (b) a timer event (c) a load event (d) a tap event
-
28.🔘 Our rule: buttons are at least 48 px tall. How many of these buttons follow the rule?
Start button: 36 px tall
Save button: 60 px tall
Back button: 40 px tall -
29.🧭 The app has tabs Home, Search, Profile. You start on Home, then:
1. open “Friend list”
2. open “Map”
3. tap the Profile tab
4. tap the Profile tab
5. tap the Search tab
How many times must you tap Back to reach the main screen of this tab? -
30.🐞 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 32
line 2: stars = stars * 2; // double it
line 3: stars = stars + 3; // add 3
line 4: show(stars); // show it - 31.🚀 Which version is newer: 3.5.1 or 3.18.2? (a) 3.18.2 (b) 3.5.1
-
32.⚙️ Which line does the processing (works out the answer)?
line 1: let bill = 57; // typed by the user
line 2: let friends = 3; // typed by the user
line 3: let share = bill / friends;
line 4: show(share); (a) line 3 (b) line 4 (c) line 1 (d) line 2 - 33.🚀 Which version is newer: 1.8.15 or 1.8.9? (a) 1.8.9 (b) 1.8.15
-
34.🔁 What number does this code show?
let scores = [80, 39, 58];
let count = 0;
for (let i = 0; i < scores.length; i++) {
if (scores[i] >= 60) {
count = count + 1;
}
}
show(count); - 35.Which of these is a user need? (a) a reminder alarm (b) a search bar (c) a dark mode switch (d) “I forget my homework”
- 36.👆 What kind of event is this: the search box changes? (a) a timer event (b) a tap event (c) a text event (d) a load event
- 37.🔀 In a good flow, each screen should lead to ___. (a) a clear next step (b) a dead end (c) a random page (d) the same screen
- 38.📱 Which one is installed on a phone: an app or a website? (a) a website (b) an app
- 39.👥 A library app has 85 readers, 60 librarians and 120 volunteers as users. How many more volunteers than readers are there?
-
40.🧪 What is the ACTUAL result of Test 3?
🎟️ 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(13) → expected 100
Test 2: price(12) → expected 100
Test 3: price(8) → expected 50
Answer key
- line 2
- a button
- 26
- 4
- nurses
- 5
- 0
- the camera
- helps everyone
- get an idea
- less code to write
- 2
- line 3
- fix and improve
- 1
- line 3
- Back
- Welcome!
- Gold
- 1
- 27
- Design A
- top bar
- Done
- add the buttons
- a wireframe
- a text event
- 1
- 0
- 67
- 3.18.2
- line 3
- 1.8.15
- 1
- “I forget my homework”
- a text event
- a clear next step
- an app
- 35
- 50
Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students