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 is the LAST line this code shows?
let names = ["Aman", "Arjun", "Meera", "Kabir"];
for (let i = 0; i < names.length; i++) {
show("Hi, " + names[i]);
} (a) Hi, Kabir (b) Hi, Meera (c) Hi, Aman (d) Hi, Arjun -
2.📊 Survey: which problem bugs you most? How many more votes did “forgetting homework” get than “forgetting birthdays”?
losing water bottles: 11 votes
forgetting homework: 7 votes
forgetting birthdays: 6 votes - 3.🔢 When you make an app, which comes LAST? (a) build the app (b) test the app (c) release it (d) plan the screens
-
4.🧪 One test case fails. Which one?
🎟️ 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(12) → expected 100
Test 2: price(18) → expected 100
Test 3: price(9) → expected 50 (a) Test 2 (b) Test 1 (c) Test 3 -
5.🔀 What number does this shop app show?
let total = 610;
if (total > 500) {
total = total - 50;
}
show(total); - 6.👥 A school app has 195 students, 85 teachers and 255 parents as users. How many more students than teachers are there?
- 7.🧪 Values right at a limit, like age 12 for “under 12”, are called ___. (a) easy cases (b) phone cases (c) edge cases (d) old cases
-
8.🐞 This code has a bug. What number does it ACTUALLY show?
line 1: let stars = 36; // start at 33
line 2: stars = stars - 3; // take away 3
line 3: stars = stars + 5; // add 5
line 4: stars = stars * 2; // double it
line 5: show(stars); // show it - 9.🎯 Which app would help this user most: a student who often misses the school bus? (a) a homework planner (b) a bus tracker (c) a water reminder (d) a recipe finder
-
10.👆 The user taps the button 2 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 - 11.True or false: you let friends try it at the plan stage. (a) False (b) True
-
12.👆 The user taps the button 1 times. What number does the label show now?
let likes = 0;
button.onTap = function () {
if (likes < 3) {
likes = likes + 1;
}
label.text = likes;
}; -
13.📊 Survey: which problem bugs you most? How many more votes did “forgetting homework” get than “wasting pocket money”?
losing water bottles: 14 votes
wasting pocket money: 13 votes
forgetting homework: 17 votes - 14.🗒️ The first small, working version of an app is often called an ___. (a) MVP (b) FAQ (c) URL (d) CPU
- 15.💾 Where should the app save notes to read offline: on the phone or in the cloud? (a) in the cloud (b) on the phone
-
16.🔘 Our rule: buttons are at least 48 px tall. How many of these buttons follow the rule?
Back button: 40 px tall
Start button: 44 px tall
Cancel button: 32 px tall - 17.True or false: your high score is an input. (a) False (b) True
- 18.🔢 In a food-order flow, which comes first: “check the cart” or “add it to the cart”? (a) check the cart (b) add it to the cart
- 19.🚀 Which version is newer: 4.17.2 or 4.9.2? (a) 4.9.2 (b) 4.17.2
- 20.🧰 In function tip(bill), what is bill? (a) a loop (b) an event (c) a screen (d) a parameter
- 21.🧰 How do you run (call) a function called greet? (a) greet[] (b) greet() (c) #greet (d) run greet
- 22.Which of these is true of a tab bar? (a) opens a list of pages (b) goes to the last screen (c) undoes one move (d) shows 3 to 5 icons
-
23.🐞 This code has a bug. What number SHOULD it show, if every line did what its comment says?
line 1: let score = 49; // start at 47
line 2: score = score - 5; // take away 5
line 3: score = score - 3; // take away 3
line 4: show(score); // show it - 24.🔢 In a quiz-app flow, what comes right after “pick an answer”? (a) tap “Start quiz” (b) see if it is right (c) read a question (d) see the final score
-
25.🧪 How many of these test cases pass?
🎟️ 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(17) → expected 100
Test 2: price(11) → expected 100
Test 3: price(9) → expected 50 -
26.🔀 What does this PIN rule show?
let pin = "556";
if (pin.length === 4) {
show("PIN saved");
} else {
show("Use 4 digits");
} (a) PIN saved (b) Use 4 digits - 27.True or false: grey text on grey is poor button design. (a) True (b) False
- 28.🚀 A privacy policy tells users ___. (a) the app’s price (b) the app’s colours (c) what data is collected (d) the screen size
-
29.🧩 How many buttons does this app screen have?
[title] Add Homework
[text box] Email
[button] Next
[button] Back
[text box] Phone
[button] Save -
30.🚀 Which of these versions is the NEWEST?
1.13.1, 1.15.1, 0.28.2, 1.10.3 (a) 1.10.3 (b) 1.15.1 (c) 0.28.2 (d) 1.13.1 - 31.True or false: a wireframe is a quick sketch. (a) True (b) False
-
32.📊 Survey: which problem bugs you most? Which problem should your app solve first?
missing the bus: 25 votes
no quiet study place: 22 votes
wasting pocket money: 11 votes (a) wasting pocket money (b) no quiet study place (c) missing the bus -
33.⚙️ What number does this app show?
let price = 250; // typed by the user
let off = 20; // typed by the user
let pay = price - off;
show(pay); -
34.🔀 Which badge does this quiz app show?
let marks = 28;
if (marks >= 80) {
show("Gold");
} else if (marks >= 50) {
show("Silver");
} else {
show("Bronze");
} (a) Bronze (b) Silver (c) Gold -
35.🖼️ How many parts (boxes) does this wireframe have?
[ search box ]
[ big picture ]
[ Save button ]
[ tab bar ]
[ filter buttons ]
[ Add button ] - 36.True or false: a shared to-do list fits saving on the phone. (a) True (b) False
-
37.🐞 This code has a bug. What number does it ACTUALLY show?
line 1: let points = 32; // start at 31
line 2: points = points - 4; // take away 4
line 3: points = points + 3; // add 3
line 4: show(points); // show it -
38.🧩 Which of these is a button on this screen?
[title] Edit Profile
[text box] Name
[slider] Volume
[button] Send
[button] Next
[button] Done
[text box] Notes (a) Volume (b) Name (c) Notes (d) Done - 39.🚀 What should an app ask for only when it really needs it? (a) a font (b) its name (c) a permission (d) its icon
- 40.🔐 Which permission does a birthday list of friends really need? (a) location (b) the microphone (c) the camera (d) contacts
Answer key
- Hi, Kabir
- 1
- release it
- Test 1
- 560
- 110
- edge cases
- 76
- a bus tracker
- OFF
- False
- 1
- 4
- MVP
- on the phone
- 0
- False
- add it to the cart
- 4.17.2
- a parameter
- greet()
- shows 3 to 5 icons
- 39
- see if it is right
- 3
- Use 4 digits
- True
- what data is collected
- 3
- 1.15.1
- True
- missing the bus
- 230
- Bronze
- 6
- False
- 31
- Done
- a permission
- contacts
Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students