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.🗒️ 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) export to a file
-
2.🧰 What does this code show?
function greet(name) {
return "Hello, " + name + "!";
}
show(greet("Zoya")); (a) Hello, Zoya! (b) Zoya (c) Hello, name! (d) greet - 3.True or false: an app updates from the store. (a) False (b) True
- 4.True or false: chat messages to friends fits saving in the cloud. (a) False (b) True
-
5.👆 The user taps the button 4 times. What number does the label show now?
let score = 1;
button.onTap = function () {
score = score + 2;
label.text = score;
}; -
6.📊 Survey: which problem bugs you most? How many more votes did “losing water bottles” get than “forgetting homework”?
missing the bus: 23 votes
losing water bottles: 24 votes
forgetting homework: 6 votes - 7.🔍 Which is the odd one out? (a) share the download link (b) connect the data (c) write the code (d) add the buttons
- 8.True or false: how fast a task is done is about UX (the experience). (a) False (b) True
-
9.🧰 What does this code show?
function greet(name) {
return "Hi, " + name + "!";
}
show(greet("Aman")); (a) Hi, name! (b) Aman (c) Hi, Aman! (d) greet - 10.🗒️ You are planning version 1 of a water reminder. Which feature can WAIT for a later version? (a) set a reminder time (b) see today’s total (c) share your streak (d) log a glass of water
-
11.🧰 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(10) + fee(12)); -
12.🐞 This code has a bug. What number SHOULD it show, if every line did what its comment says?
line 1: let stars = 37; // start at 37
line 2: stars = stars - 4; // take away 4
line 3: stars = stars * 2; // double it
line 4: stars = stars - 3; // take away 2
line 5: show(stars); // show it -
13.⚙️ Which line does the processing (works out the answer)?
line 1: let km = 10; // typed by the user
line 2: let metres = km * 1000;
line 3: show(metres); (a) line 1 (b) line 3 (c) line 2 - 14.🔍 Which is the odd one out? (a) list what users need (b) let friends try it (c) try every button (d) write down the bugs
- 15.🗒️ You are planning version 1 of a pocket-money tracker. Which feature is a MUST-HAVE? (a) pie-chart colours (b) export to a file (c) add money received (d) savings stickers
- 16.🔐 Is this permission request fair or too much: map app → location? (a) fair (b) too much
-
17.🧪 How many of these test cases pass?
🎟️ 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(17) → expected 100
Test 2: price(20) → expected 100
Test 3: price(9) → expected 50 -
18.🔀 What number does this shop app show?
let total = 470;
if (total > 500) {
total = total - 50;
}
show(total); - 19.💡 Which app idea solves this problem: friends argue over who pays? (a) a study-room finder (b) a bill splitter (c) a medicine reminder (d) a lost-and-found board
- 20.🌗 Is red on green easy or hard to read on a button? (a) easy to read (b) hard to read
-
21.⚙️ What number does this app show?
let km = 12; // typed by the user
let metres = km * 1000;
show(metres); -
22.🧪 One test case fails. Which one?
📝 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(9) → expected Pass
Test 2: result(4) → expected Try again
Test 3: result(7) → expected Pass (a) Test 1 (b) Test 2 (c) Test 3 - 23.💾 Data saved only on the phone is lost when ___. (a) the screen turns off (b) the app is closed (c) the phone is lost (d) you send a message
-
24.🧪 What is the ACTUAL result of Test 3?
🚚 Rule: delivery is free (0) when the order is 400 or more; otherwise it costs 40.
function delivery(total) {
if (total >= 400) {
return 0;
}
return 40;
}
Test 1: delivery(550) → expected 0
Test 2: delivery(450) → expected 0
Test 3: delivery(250) → expected 40 - 25.♿ Why add captions to videos? (a) so anyone can follow (b) to slow them down (c) to add colour (d) to hide the sound
-
26.🔀 What does this PIN rule show?
let pin = "12441";
if (pin.length === 4) {
show("PIN saved");
} else {
show("Use 4 digits");
} (a) PIN saved (b) Use 4 digits - 27.🛠️ At which stage do you write the code? (a) the idea stage (b) the release stage (c) the test stage (d) the build stage
-
28.⚙️ Which line does the processing (works out the answer)?
line 1: let price = 500; // 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 3 (b) line 2 (c) line 4 (d) line 1 -
29.🧰 What number does this code show?
function points(stars) {
return stars * 10 + 5;
}
show(points(3) + points(3)); -
30.🔘 Our rule: buttons are at least 48 px tall. Which button is too small?
Save button: 36 px tall
Send button: 72 px tall
Help button: 60 px tall
Next button: 72 px tall (a) Next (b) Send (c) Save (d) Help -
31.🧪 One test case fails. Which one?
🚚 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(800) → expected 0
Test 2: delivery(350) → expected 40
Test 3: delivery(500) → expected 0 (a) Test 2 (b) Test 1 (c) Test 3 -
32.🧭 The app has tabs Lessons, Quiz, Me. You start on Lessons, then:
1. open “Edit photo”
2. tap the Me tab
3. open “Help page”
4. tap the Lessons tab
5. open “Video”
Which screen are you on now? (a) Help page (b) Edit photo (c) Lessons (d) Video - 33.💡 An app that tries to do everything at once is usually ___. (a) easy to build (b) finished fast (c) hard to use (d) very small
-
34.🔀 What does this sign-up rule show?
let age = 15;
if (age >= 13) {
show("Welcome!");
} else {
show("Ask a parent");
} (a) Ask a parent (b) Welcome! - 35.🧩 In an app, what is the game-over page? (a) data (b) an input (c) a screen (d) a button
- 36.✏️ Is this true of a wireframe or of a final design: is a quick sketch? (a) a final design (b) a wireframe
-
37.🖼️ In this wireframe (top to bottom), which part is at the very bottom?
[ Add button ]
[ tab bar ]
[ title text ]
[ Save button ] (a) Save button (b) tab bar (c) Add button (d) title text - 38.Which of these is about UX (the experience)? (a) the font size (b) how easy sign-up is (c) the button colours (d) the screen layout
-
39.⚙️ Which line does the processing (works out the answer)?
line 1: let price = 95; // typed by the user
line 2: let qty = 2; // typed by the user
line 3: let total = price * qty;
line 4: show(total); (a) line 3 (b) line 2 (c) line 1 (d) line 4 - 40.Which of these is true of a menu button? (a) shows 3 to 5 icons (b) sits at the bottom (c) hides extra links (d) switches main sections
Answer key
- export to a file
- Hello, Zoya!
- True
- True
- 9
- 18
- share the download link
- True
- Hi, Aman!
- share your streak
- 40
- 64
- line 2
- list what users need
- add money received
- fair
- 3
- 470
- a bill splitter
- hard to read
- 12000
- Test 3
- the phone is lost
- 40
- so anyone can follow
- Use 4 digits
- the build stage
- line 3
- 70
- Save
- Test 3
- Video
- hard to use
- Welcome!
- a screen
- a wireframe
- Save button
- how easy sign-up is
- line 3
- hides extra links
Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students