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 of these is an output? (a) a pop-up message (b) sorting the scores (c) checking a password (d) adding up a bill
- 2.🔍 Which is the odd one out? (a) share the download link (b) put it on an app store (c) write the store text (d) let friends try it
-
3.🧪 What is the ACTUAL result of Test 1?
🎟️ 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(16) → expected 100
Test 2: price(11) → expected 50
Test 3: price(14) → expected 100 - 4.🧩 In an app, what is a box to type a name? (a) data (b) a button (c) an input (d) a screen
- 5.👥 A library app has 60 readers, 70 librarians and 265 volunteers as users. Which user group is the biggest? (a) volunteers (b) librarians (c) readers
-
6.⚙️ What number does this app show?
let bill = 180; // typed by the user
let friends = 4; // typed by the user
let share = bill / friends;
show(share); - 7.✏️ A box with a cross in a wireframe usually means ___. (a) a picture goes here (b) a closed app (c) delete this (d) an error
- 8.🧰 What is a function? (a) a list of colours (b) a screen size (c) a named block of code (d) a type of phone
-
9.🧪 How many of these test cases pass?
🚚 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(1050) → expected 0
Test 2: delivery(800) → expected 0
Test 3: delivery(700) → expected 40 - 10.True or false: a final design is a quick sketch. (a) False (b) True
- 11.🔍 Which is the odd one out? (a) adding up a bill (b) tapping a button (c) working out a tip (d) checking a password
- 12.🗒️ You are planning version 1 of a homework planner. Which feature is a MUST-HAVE? (a) see tasks by day (b) pick a theme colour (c) earn stickers (d) share tasks to friends
-
13.👆 The user taps the button 2 times. What number does the label show now?
let score = 8;
button.onTap = function () {
score = score + 4;
label.text = score;
}; - 14.🔢 In a food-order flow, which comes first: “pick a dish” or “open the menu”? (a) pick a dish (b) open the menu
- 15.🚀 Your app is at version 3.2.2. The next release is a big redesign that changes how the app works. What is its version number? (a) 3.2.3 (b) 3.3.0 (c) 3.3.2 (d) 4.0.0
- 16.Which of these is true of a final design? (a) uses plain grey boxes (b) has no real colours (c) has the real colours (d) shows where things go
- 17.True or false: the home page of an app is a screen. (a) False (b) True
- 18.👆 What kind of event is this: the user taps Play? (a) a text event (b) a tap event (c) a timer event (d) a load event
-
19.💾 What does this code show? (Positions start at 0.)
let friends = ["Kabir", "Arjun", "Meera", "Riya"];
show(friends[0]); (a) Kabir (b) Arjun (c) Riya (d) Meera -
20.🧪 What is the ACTUAL result of Test 3?
🚚 Rule: delivery is free (0) when the order is 700 or more; otherwise it costs 40.
function delivery(total) {
if (total >= 700) {
return 0;
}
return 40;
}
Test 1: delivery(750) → expected 0
Test 2: delivery(900) → expected 0
Test 3: delivery(500) → expected 40 - 21.🔢 After an app is released, what comes right after “list what to fix”? (a) release an update (b) read user reviews (c) fix and improve (d) test it again
-
22.🐞 This code has a bug. What number SHOULD it show, if every line did what its comment says?
line 1: let score = 43; // start at 42
line 2: score = score * 2; // double it
line 3: score = score - 2; // take away 2
line 4: show(score); // show it - 23.📅 An app team plans for 5 days, builds for 6 days, tests for 2 days and releases on 1 more day. How many more days does building take than testing?
-
24.🧪 How many of these test cases pass?
📝 Rule: a quiz is passed with 5 or more right answers.
function result(right) {
if (right > 5) {
return "Pass";
}
return "Try again";
}
Test 1: result(7) → expected Pass
Test 2: result(2) → expected Try again
Test 3: result(9) → expected Pass - 25.🗒️ You are planning version 1 of a pocket-money tracker. Which feature can WAIT for a later version? (a) add money received (b) add money spent (c) show the balance (d) pie-chart colours
- 26.♿ A screen has 7 icon buttons. Only 3 of them have a text label for screen readers. How many still need a label?
- 27.🧪 A test case is an input together with its ___. (a) font size (b) expected result (c) app icon (d) screen colour
-
28.🧩 Which of these is a button on this screen?
[title] Settings
[button] Help
[button] Save
[text box] Phone
[button] Cancel (a) Save (b) Phone - 29.💾 Where should the app save a class leaderboard: on the phone or in the cloud? (a) in the cloud (b) on the phone
-
30.🧪 What is the ACTUAL result of Test 1?
🎟️ 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(11) → expected 50
Test 2: price(13) → expected 100
Test 3: price(18) → expected 100 - 31.👥 A school app has 80 students, 285 teachers and 160 parents as users. How many users does it have in all?
- 32.Which of these is about UI (the look)? (a) how users feel after (b) the font size (c) whether users get lost (d) how many taps it takes
- 33.Which of these is about UI (the look)? (a) whether users get lost (b) how users feel after (c) the screen layout (d) how fast a task is done
- 34.🎯 Why learn about users before you build? (a) to make it longer (b) to slow it down (c) to pick a logo (d) to build what they need
- 35.✏️ What is the easiest way to draw a first wireframe? (a) a phone case (b) pencil and paper (c) a 3D printer (d) a microphone
-
36.🧰 A museum app works out the entry fee. What number does this code show?
function fee(age) {
if (age < 5) {
return 0;
}
return 20;
}
show(fee(5) + fee(12)); -
37.🧩 Which of these is a button on this screen?
[title] New Note
[button] Send
[slider] Volume
[switch] Remind me
[text box] Due date
[button] Cancel
[button] Save (a) Due date (b) Remind me (c) Cancel (d) Volume -
38.🔁 What number does this code show?
let steps = [11, 20, 14, 2, 10];
let total = 0;
for (let i = 0; i < steps.length; i++) {
total = total + steps[i];
}
show(total); -
39.🧪 What is the ACTUAL result of Test 1?
🚚 Rule: delivery is free (0) when the order is 600 or more; otherwise it costs 40.
function delivery(total) {
if (total >= 600) {
return 0;
}
return 40;
}
Test 1: delivery(850) → expected 0
Test 2: delivery(700) → expected 0
Test 3: delivery(550) → expected 40 - 40.🔁 Why use a loop to show 100 messages? (a) it hides them (b) less code to write (c) it uses more lines (d) it is slower
Answer key
- a pop-up message
- let friends try it
- 100
- an input
- volunteers
- 45
- a picture goes here
- a named block of code
- 3
- False
- tapping a button
- see tasks by day
- 16
- open the menu
- 4.0.0
- has the real colours
- True
- a tap event
- Kabir
- 40
- fix and improve
- 82
- 4
- 3
- pie-chart colours
- 4
- expected result
- Save
- in the cloud
- 50
- 525
- the font size
- the screen layout
- to build what they need
- pencil and paper
- 40
- Cancel
- 57
- 0
- less code to write
Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students