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.🧰 What number does this code show?
function total(price, qty) {
return price * qty;
}
show(total(70, 5)); -
2.🔁 What number does this code show?
let steps = [4, 2, 19];
let best = 0;
for (let i = 0; i < steps.length; i++) {
if (steps[i] > best) {
best = steps[i];
}
}
show(best); -
3.🧰 What number does this code show?
function total(price, qty) {
return price * qty;
}
show(total(60, 4)); - 4.🚀 What should an app ask for only when it really needs it? (a) its name (b) its icon (c) a font (d) a permission
- 5.🗂️ What kind of app is a cricket run chase? (a) a learning app (b) a health app (c) a game (d) a tool app
- 6.🔢 After an app is released, what comes right after “list what to fix”? (a) release an update (b) fix and improve (c) test it again (d) read user reviews
-
7.🔀 What number does this shop app show?
let total = 290;
if (total > 500) {
total = total - 50;
}
show(total); - 8.Which of these helps everyone use the app? (a) strong colour contrast (b) sudden loud sounds (c) icons with no labels (d) tiny tap areas
- 9.Which of these is a button? (a) tap to go Next (b) the log-in page (c) a slider for volume (d) the game-over page
- 10.💡 Which app idea solves this problem: pupils forget due dates? (a) a bill splitter (b) a lost-and-found board (c) a homework planner (d) a medicine reminder
- 11.🔢 In a food-order flow, what comes right after “check the cart”? (a) pick a dish (b) pay for the order (c) track the order (d) open the menu
- 12.🔀 When does the else part run? (a) always (b) when the test is false (c) never (d) when the test is true
- 13.True or false: a final design uses the final pictures. (a) False (b) True
-
14.🐞 Each comment says what its line SHOULD do. Which line has the bug?
line 1: let lives = 36; // start at 36
line 2: lives = lives + 2; // double it
line 3: lives = lives + 6; // add 6
line 4: show(lives); // show it (a) line 3 (b) line 2 (c) line 1 - 15.Which of these app ideas solves a real problem? (a) a blank grey screen (b) an app that just says hi (c) a bill splitter (d) a page of random dots
-
16.🔀 What does this sign-up rule show?
let age = 8;
if (age >= 13) {
show("Welcome!");
} else {
show("Ask a parent");
} (a) Ask a parent (b) Welcome! - 17.💾 What is a variable? (a) a type of screen (b) a picture (c) a phone setting (d) a named box for a value
-
18.🧩 Which of these is a button on this screen?
[title] Sign Up
[text box] City
[button] Start
[button] Next
[button] Done
[switch] Remind me
[slider] Volume (a) City (b) Remind me (c) Done (d) Volume - 19.Which of these app ideas solves no real problem? (a) a medicine reminder (b) a bill splitter (c) a blank grey screen (d) a library due-date alert
- 20.🗒️ You are planning version 1 of a bus tracker. Which feature can WAIT for a later version? (a) pick your bus stop (b) show arrival time (c) change the bus icon (d) see where the bus is
-
21.⚙️ What number does this app show?
let price = 25; // typed by the user
let qty = 2; // typed by the user
let total = price * qty;
show(total); -
22.🖼️ In this wireframe (top to bottom), what is right above the filter buttons?
[ title text ]
[ big picture ]
[ filter buttons ]
[ list of items ]
[ Save button ]
[ search box ] (a) list of items (b) big picture (c) search box (d) title text - 23.💡 Does an app idea like a page of random dots solve a real problem? (a) Yes (b) No
- 24.True or false: a racing challenge is a game. (a) True (b) False
- 25.🎯 Is this a user need or a feature: “What should I cook?”? (a) a user need (b) a feature
-
26.🔁 What number does this code show?
let runs = [69, 44, 90];
let count = 0;
for (let i = 0; i < runs.length; i++) {
if (runs[i] >= 40) {
count = count + 1;
}
}
show(count); -
27.♿ Our rule: text is at least 16 px. How many texts on this screen are too small?
Title: 10 px
Footer: 18 px
Menu: 12 px
Caption: 10 px
Hint: 10 px -
28.🧭 The app has tabs Feed, Chat, Settings. You start on Feed, then:
1. open “Badges”
2. open “Badges”
3. tap Back
4. tap the Chat tab
How many times must you tap Back to reach the main screen of this tab? - 29.True or false: a homework planner is the best fit for a gamer who forgets to drink. (a) True (b) False
- 30.True or false: a birthday list of friends needs your location. (a) True (b) False
-
31.🚀 Which of these versions is the OLDEST?
2.21.9, 3.16.9, 3.10.9, 3.6.2 (a) 2.21.9 (b) 3.10.9 (c) 3.6.2 (d) 3.16.9 - 32.True or false: a result on screen is an output. (a) False (b) True
- 33.♿ What should every icon-only button have for screen readers? (a) a bright colour (b) a sound (c) a long animation (d) a text label
-
34.🔀 What does this battery rule show?
let battery = 72;
if (battery < 20) {
show("Low battery");
} else {
show("Battery OK");
} (a) Low battery (b) Battery OK -
35.📊 Survey: which problem bugs you most? Which problem should your app solve first?
missing the bus: 7 votes
wasting pocket money: 5 votes
no quiet study place: 15 votes (a) wasting pocket money (b) no quiet study place (c) missing the bus - 36.🎨 Is this about UI or UX: how easy sign-up is? (a) UX (b) UI
-
37.🔀 What does this PIN rule show?
let pin = "7249";
if (pin.length === 4) {
show("PIN saved");
} else {
show("Use 4 digits");
} (a) Use 4 digits (b) PIN saved -
38.🧪 One test case fails. Which one?
🎟️ 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(11) → expected 100
Test 2: price(6) → expected 50
Test 3: price(10) → expected 100 (a) Test 2 (b) Test 1 (c) Test 3 -
39.🐞 Each comment says what its line SHOULD do. Which line has the bug?
line 1: let points = 35; // start at 35
line 2: points = points - 3; // take away 2
line 3: points = points - 1; // take away 1
line 4: show(points); // show it (a) line 1 (b) line 3 (c) line 2 -
40.🔁 What is the LAST line this code shows?
let names = ["Meera", "Kabir", "Riya"];
for (let i = 0; i < names.length; i++) {
show("Hi, " + names[i]);
} (a) Hi, Meera (b) Hi, Riya (c) Hi, Kabir
Answer key
- 350
- 19
- 240
- a permission
- a game
- fix and improve
- 290
- strong colour contrast
- tap to go Next
- a homework planner
- pay for the order
- when the test is false
- True
- line 2
- a bill splitter
- Ask a parent
- a named box for a value
- Done
- a blank grey screen
- change the bus icon
- 50
- big picture
- No
- True
- a user need
- 3
- 4
- 0
- False
- False
- 2.21.9
- True
- a text label
- Battery OK
- no quiet study place
- UX
- PIN saved
- Test 3
- line 2
- Hi, Riya
Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students