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.True or false: a recipe finder is the best fit for a teen learning to make snacks. (a) False (b) True
-
2.⚙️ What number does this app show?
let price = 270; // typed by the user
let off = 20; // typed by the user
let pay = price - off;
show(pay); -
3.🐞 This code has a bug. What number SHOULD it show, if every line did what its comment says?
line 1: let stars = 45; // start at 45
line 2: stars = stars + 3; // add 3
line 3: stars = stars + 2; // double it
line 4: show(stars); // show it - 4.🔢 In a food-order flow, which comes first: “open the menu” or “add it to the cart”? (a) add it to the cart (b) open the menu
-
5.🔁 What number does this code show?
let runs = [12, 17, 20, 4];
let best = 0;
for (let i = 0; i < runs.length; i++) {
if (runs[i] > best) {
best = runs[i];
}
}
show(best); -
6.👆 Two designs for the same task (each arrow is one tap). How many taps does Design A need?
Design A: Home → Search → Cart → Address → Item → Confirm → Shop
Design B: Home → Shop → Address → Offers -
7.🐞 Each comment says what its line SHOULD do. Which line has the bug?
line 1: let score = 39; // start at 39
line 2: score = score + 6; // add 6
line 3: score = score + 2; // add 2
line 4: score = score + 2; // double it
line 5: show(score); // show it (a) line 2 (b) line 4 (c) line 1 (d) line 3 - 8.✏️ Is this true of a wireframe or of a final design: uses plain grey boxes? (a) a final design (b) a wireframe
-
9.⚙️ Which line does the processing (works out the answer)?
line 1: let price = 330; // 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 3 (c) line 4 (d) line 1 - 10.True or false: a final design is a quick sketch. (a) True (b) False
- 11.Which of these is a button? (a) a box to type a name (b) tap to go Next (c) the game-over page (d) your high score
- 12.🗂️ What kind of app is a flashcard trainer? (a) a health app (b) a game (c) a learning app (d) a tool app
- 13.🔢 In a food-order flow, what comes right after “open the menu”? (a) track the order (b) check the cart (c) add it to the cart (d) pick a dish
- 14.Which of these requests asks for too much? (a) camera app → camera (b) map app → location (c) quiz app → microphone (d) calling app → contacts
- 15.🔢 In a food-order flow, which comes FIRST? (a) open the menu (b) add it to the cart (c) pick a dish (d) pay for the order
-
16.🔁 What is the LAST line this code shows?
let names = ["Kabir", "Riya", "Arjun", "Meera", "Aman"];
for (let i = 0; i < names.length; i++) {
show("Hi, " + names[i]);
} (a) Hi, Arjun (b) Hi, Riya (c) Hi, Aman (d) Hi, Kabir - 17.Which of these is true of an app? (a) has a web address (b) opens from a link (c) needs no installing (d) updates from the store
- 18.✏️ Is this true of a wireframe or of a final design: shows the real fonts? (a) a final design (b) a wireframe
- 19.True or false: icons with no meaning is good button design. (a) True (b) False
-
20.🧪 What is the ACTUAL result of Test 3?
🎟️ Rule: a ticket costs 50 for children under 12, and 100 for everyone else.
function price(age) {
if (age <= 12) {
return 50;
}
return 100;
}
Test 1: price(13) → expected 100
Test 2: price(15) → expected 100
Test 3: price(9) → expected 50 -
21.🔁 What is the LAST line this code shows?
let names = ["Meera", "Arjun", "Kabir", "Aman", "Riya"];
for (let i = 0; i < names.length; i++) {
show("Hi, " + names[i]);
} (a) Hi, Meera (b) Hi, Kabir (c) Hi, Arjun (d) Hi, Riya -
22.🧭 The app has tabs Feed, Chat, Settings. You start on Feed, then:
1. open “Badges”
2. tap Back
3. open “Help page”
4. tap the Settings tab
Which screen are you on now? (a) Help page (b) Settings (c) Feed (d) Badges - 23.🔐 A torch app asks for your contacts. What should you do? (a) share them all (b) deny it (c) post them online (d) allow it
- 24.True or false: a bill splitter solves a real problem. (a) False (b) True
- 25.💡 Does an app idea like a button with no action solve a real problem? (a) Yes (b) No
- 26.🗒️ You are planning version 1 of a homework planner. Which feature can WAIT for a later version? (a) set a due date (b) add a homework task (c) see tasks by day (d) share tasks to friends
-
27.🧰 A museum app works out the entry fee. What number does this code show?
function fee(age) {
if (age < 5) {
return 0;
}
return 50;
}
show(fee(11) + fee(9)); -
28.🔀 What does this battery rule show?
let battery = 80;
if (battery < 20) {
show("Low battery");
} else {
show("Battery OK");
} (a) Battery OK (b) Low battery -
29.🔁 What number does this code show?
let scores = [77, 49, 72];
let count = 0;
for (let i = 0; i < scores.length; i++) {
if (scores[i] >= 40) {
count = count + 1;
}
}
show(count); -
30.👆 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 - 31.🧪 Values right at a limit, like age 12 for “under 12”, are called ___. (a) easy cases (b) phone cases (c) old cases (d) edge cases
- 32.🔐 Which permission does a weather-near-me app really need? (a) the camera (b) location (c) the microphone (d) contacts
- 33.🔍 Which is the odd one out? (a) the theme colours (b) the icon shapes (c) the screen layout (d) how easy sign-up is
-
34.👆 The user types Zoya in nameBox and taps the button 1 time. What does the label show?
button.onTap = function () {
label.text = "Well done, " + nameBox.text + "!";
}; (a) Well done! (b) Well done, Zoya! (c) Well done, nameBox.text! (d) Zoya - 35.🧪 A test fails when ___. (a) actual is not expected (b) the font is big (c) the app is new (d) both are the same
- 36.📅 An app team plans for 5 days, builds for 8 days, tests for 2 days and releases on 1 more day. How many days does the whole project take?
- 37.Which colour pair is hard to read? (a) white on dark green (b) black on pale grey (c) dark blue on white (d) pale pink on white
-
38.🔘 Our rule: buttons are at least 48 px tall. Which button is too small?
Save button: 28 px tall
Start button: 64 px tall
Back button: 60 px tall
Help button: 52 px tall (a) Help (b) Back (c) Save (d) Start -
39.👆 Two designs for the same task (each arrow is one tap). How many taps does the shorter design save?
Design A: Home → Item → Pens
Design B: Home → Item → Pens → Address - 40.True or false: “colour as the only clue” helps everyone use the app. (a) True (b) False
Answer key
- True
- 250
- 96
- open the menu
- 20
- 6
- line 4
- a wireframe
- line 3
- False
- tap to go Next
- a learning app
- pick a dish
- quiz app → microphone
- open the menu
- Hi, Aman
- updates from the store
- a final design
- False
- 50
- Hi, Riya
- Settings
- deny it
- True
- No
- share tasks to friends
- 100
- Battery OK
- 3
- ON
- edge cases
- location
- how easy sign-up is
- Well done, Zoya!
- actual is not expected
- 16
- pale pink on white
- Save
- 1
- False
Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students