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: friends argue over who pays? (a) a bill splitter (b) a medicine reminder (c) a homework planner (d) a lost-and-found board
- 2.🚀 Which version is newer: 4.5.5 or 4.5.19? (a) 4.5.5 (b) 4.5.19
-
3.🚀 Which of these versions is the OLDEST?
1.12.5, 0.21.8, 1.15.8, 1.9.8 (a) 1.9.8 (b) 1.12.5 (c) 1.15.8 (d) 0.21.8 - 4.🚀 Which version is newer: 1.2.4 or 1.2.11? (a) 1.2.4 (b) 1.2.11
- 5.True or false: typing your age is an input. (a) False (b) True
-
6.♿ Our rule: text is at least 16 px. Which text on this screen is too small?
Label: 26 px
Title: 23 px
Caption: 14 px (a) Title (b) Caption (c) Label -
7.💾 pop() takes off the last item. What does this code show?
let friends = ["Zoya", "Kabir", "Arjun"];
friends.pop();
show(friends[friends.length - 1]); (a) Zoya (b) Kabir (c) Arjun -
8.💾 What does this code show? (Positions start at 0.)
let friends = ["Riya", "Aman", "Kabir", "Arjun"];
show(friends[1]); (a) Aman (b) Riya (c) Arjun (d) Kabir -
9.🔁 What number does this code show?
let runs = [12, 2, 16];
let best = 0;
for (let i = 0; i < runs.length; i++) {
if (runs[i] > best) {
best = runs[i];
}
}
show(best); - 10.💡 Which app idea solves this problem: a patient misses doses? (a) a lost-and-found board (b) a medicine reminder (c) a study-room finder (d) a bill splitter
-
11.🧰 What number does this code show?
function double(n) {
return n * 2;
}
show(double(13)); -
12.🔀 Which badge does this quiz app show?
let marks = 76;
if (marks >= 80) {
show("Gold");
} else if (marks >= 50) {
show("Silver");
} else {
show("Bronze");
} (a) Gold (b) Silver (c) Bronze - 13.Which of these makes the app harder to use? (a) labels on every icon (b) big touch targets (c) icons with no labels (d) captions on videos
-
14.🐞 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 - 3; // take away 1
line 3: stars = stars - 2; // take away 2
line 4: stars = stars + 6; // add 6
line 5: show(stars); // show it (a) line 3 (b) line 4 (c) line 1 (d) line 2 -
15.🧪 How many of these test cases pass?
📝 Rule: a quiz is passed with 7 or more right answers.
function result(right) {
if (right >= 7) {
return "Pass";
}
return "Try again";
}
Test 1: result(7) → expected Pass
Test 2: result(8) → expected Pass
Test 3: result(4) → expected Try again -
16.⚙️ Which line does the processing (works out the answer)?
line 1: let bill = 80; // typed by the user
line 2: let friends = 4; // typed by the user
line 3: let share = bill / friends;
line 4: show(share); (a) line 2 (b) line 3 (c) line 4 (d) line 1 -
17.🧪 One test case fails. Which one?
🚚 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(800) → expected 0
Test 3: delivery(700) → expected 40 (a) Test 1 (b) Test 3 (c) Test 2 -
18.⚙️ What number does this app show?
let price = 50; // typed by the user
let qty = 4; // typed by the user
let total = price * qty;
show(total); - 19.🐞 After fixing a bug you should ___. (a) never test (b) delete the test (c) test it again (d) release at once
-
20.🧪 What is the ACTUAL result of Test 1?
🚚 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(600) → expected 0
Test 2: delivery(700) → expected 0
Test 3: delivery(400) → expected 40 -
21.💾 What number does this code show?
let songs = ["Monsoon", "Ocean", "Stars"];
songs.push("Kites");
songs.push("Sunrise");
show(songs.length); - 22.🗒️ A to-do app with no “add a task” feature is ___. (a) a nice extra (b) ready to release (c) well planned (d) missing a must-have
-
23.⚙️ What number does this app show?
let price = 80; // typed by the user
let qty = 2; // typed by the user
let total = price * qty;
show(total); - 24.True or false: a bus tracker needs your location. (a) True (b) False
-
25.♿ Our rule: text is at least 16 px. How many texts on this screen are too small?
Caption: 21 px
Footer: 11 px
Title: 23 px
Label: 22 px
Menu: 23 px -
26.👆 Two designs for the same task (each arrow is one tap). Which needs FEWER taps?
Design A: Home → Item → Pay
Design B: Home → Menu → Search → Shop (a) Design B (b) Design A - 27.🚀 Which version is newer: 4.19.2 or 4.8.1? (a) 4.8.1 (b) 4.19.2
- 28.🔐 Which permission does a walking map really need? (a) the microphone (b) the camera (c) location (d) contacts
-
29.🖼️ In this wireframe (top to bottom), what is right below the list of items?
[ Save button ]
[ list of items ]
[ title text ]
[ big picture ]
[ Add button ] (a) title text (b) Save button (c) big picture (d) Add button -
30.👆 The user taps the button 4 times. What number does the label show now?
let stars = 8;
button.onTap = function () {
stars = stars + 1;
label.text = stars;
}; - 31.True or false: an app opens from a link. (a) True (b) False
- 32.🗒️ You are planning version 1 of a bus tracker. Which feature is a MUST-HAVE? (a) a dark mode (b) rate the driver (c) change the bus icon (d) pick your bus stop
- 33.🔍 Which is the odd one out? (a) a word battle (b) a puzzle with levels (c) a racing challenge (d) a spelling coach
- 34.🔢 When you make an app, what comes right after “get an idea”? (a) release it (b) test the app (c) plan the screens (d) build the app
-
35.💾 What does this code show? (Positions start at 0.)
let friends = ["Zoya", "Kabir", "Riya", "Arjun"];
show(friends[1]); (a) Zoya (b) Kabir (c) Riya (d) Arjun - 36.True or false: a draft you are typing fits saving on the phone. (a) False (b) True
- 37.🗒️ 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
- 38.🎯 An app for “everyone” with no clear user usually ___. (a) is easy to build (b) helps nobody well (c) wins every prize (d) needs no testing
-
39.💾 What does this code show? (Positions start at 0.)
let songs = ["Sunrise", "Stars", "Rain", "Monsoon", "Kites"];
show(songs[4]); (a) Kites (b) Rain (c) Sunrise (d) Stars - 40.Which of these happens at the build stage? (a) talk to possible users (b) list what users need (c) connect the data (d) sketch the screens
Answer key
- a bill splitter
- 4.5.19
- 0.21.8
- 1.2.11
- True
- Caption
- Kabir
- Aman
- 16
- a medicine reminder
- 26
- Silver
- icons with no labels
- line 2
- 3
- line 3
- Test 2
- 200
- test it again
- 0
- 5
- missing a must-have
- 160
- True
- 1
- Design A
- 4.19.2
- location
- title text
- 12
- False
- pick your bus stop
- a spelling coach
- plan the screens
- Kabir
- True
- see tasks by day
- helps nobody well
- Kites
- connect the data
Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students