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 data? (a) the settings page (b) today’s step count (c) the home page of an app (d) a slider for volume
- 2.True or false: a water reminder is the best fit for a runner who forgets to sip water. (a) True (b) False
- 3.👆 An event in an app is ___. (a) an app store (b) something that happens (c) a kind of list (d) a colour theme
- 4.⚙️ In an app, is adding up a bill an input, processing or an output? (a) input (b) output (c) processing
- 5.🎯 What is a user need? (a) a problem a user has (b) a colour theme (c) a phone setting (d) a type of button
- 6.🔀 When does the else part run? (a) never (b) when the test is true (c) when the test is false (d) always
- 7.Which of these is a feature? (a) “What should I cook?” (b) “I forget my homework” (c) “Small text is hard” (d) a search bar
-
8.🧪 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(11) → expected 50
Test 2: price(12) → expected 100
Test 3: price(17) → expected 100 -
9.📊 Survey: which problem bugs you most? How many students voted in all?
forgetting homework: 6 votes
no quiet study place: 21 votes
missing the bus: 25 votes -
10.💾 What does this code show? (Positions start at 0.)
let notes = ["Music", "Maths", "Sports"];
show(notes[2]); (a) Sports (b) Music (c) Maths - 11.🗒️ You are planning version 1 of a quiz app. Which feature is a MUST-HAVE? (a) confetti effects (b) background music (c) show the score (d) an avatar shop
- 12.🧭 What does the back button usually do? (a) deletes the page (b) closes all apps (c) goes to the last screen (d) opens settings
-
13.🧪 One test case fails. Which one?
🎟️ 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(14) → expected 100
Test 2: price(8) → expected 50
Test 3: price(11) → expected 100 (a) Test 1 (b) Test 2 (c) Test 3 - 14.🌗 Is black on yellow easy or hard to read on a button? (a) easy to read (b) hard to read
-
15.🔁 What is the LAST line this code shows?
let names = ["Zoya", "Meera", "Kabir"];
for (let i = 0; i < names.length; i++) {
show("Hi, " + names[i]);
} (a) Hi, Meera (b) Hi, Zoya (c) Hi, Kabir - 16.📅 An app team plans for 5 days, builds for 7 days, tests for 2 days and releases on 1 more day. How many days does the whole project take?
-
17.🧩 Which of these is a button on this screen?
[title] Settings
[text box] Subject
[button] Back
[button] Cancel
[slider] Text size (a) Subject (b) Text size (c) Cancel -
18.👆 Two designs for the same task (each arrow is one tap). Which needs FEWER taps?
Design A: Home → Results → Pens → Menu
Design B: Home → Item → Address → Confirm → Search (a) Design B (b) Design A - 19.🗂️ What kind of app is a step counter? (a) a game (b) a learning app (c) a health app (d) a tool app
-
20.💾 What number does this code show?
let songs = ["Rain", "Sunrise"];
songs.push("Kites");
show(songs.length); -
21.💾 What number does this code show?
let score = 9;
score = score - 5;
score = score + 5;
show(score); - 22.🚀 Which version is newer: 2.19.0 or 2.4.2? (a) 2.4.2 (b) 2.19.0
- 23.🛠️ At which stage do you write the code? (a) the test stage (b) the build stage (c) the release stage (d) the plan stage
- 24.💡 Does an app idea like a bill splitter solve a real problem? (a) No (b) Yes
-
25.👆 The user taps the button 5 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 -
26.🧪 How many of these test cases pass?
🎟️ Rule: a ticket costs 50 for children under 9, and 100 for everyone else.
function price(age) {
if (age < 9) {
return 50;
}
return 100;
}
Test 1: price(9) → expected 100
Test 2: price(5) → expected 50
Test 3: price(11) → expected 100 - 27.🔁 Why use a loop to show 100 messages? (a) it hides them (b) it is slower (c) it uses more lines (d) less code to write
- 28.🔢 In a food-order flow, which comes LAST? (a) check the cart (b) pay for the order (c) pick a dish (d) track the order
- 29.🔍 Which is the odd one out? (a) a pop-up message (b) a result on screen (c) a buzz (vibration) (d) taking a photo
-
30.⚙️ What number does this app show?
let price = 95; // typed by the user
let qty = 2; // typed by the user
let total = price * qty;
show(total); - 31.🔍 Which is the odd one out? (a) text that can grow (b) labels on every icon (c) strong colour contrast (d) fast-flashing lights
-
32.🔁 What number does this code show?
let scores = [18, 19, 16];
let total = 0;
for (let i = 0; i < scores.length; i++) {
total = total + scores[i];
}
show(total); -
33.🔀 What number does this shop app show?
let total = 640;
if (total > 500) {
total = total - 50;
}
show(total); -
34.👆 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) ON (b) OFF - 35.🧩 Which part lets the user give the app information? (a) a title (b) a logo (c) an icon (d) an input
-
36.🧭 The app has tabs Home, Search, Profile. You start on Home, then:
1. open “Score card”
2. tap the Home tab
3. open “Edit photo”
4. open “Map”
How many times must you tap Back to reach the main screen of this tab? -
37.🧩 How many buttons does this app screen have?
[title] Edit Profile
[text box] Name
[text box] Email
[text box] Age
[slider] Text size
[button] Back
[switch] Remind me
[button] Start - 38.🚀 What should an app ask for only when it really needs it? (a) a permission (b) its name (c) its icon (d) a font
- 39.⚙️ In an app, is taking a photo an input, processing or an output? (a) processing (b) input (c) output
-
40.🧰 What number does this code show?
function total(price, qty) {
return price * qty;
}
show(total(20, 6));
Answer key
- today’s step count
- True
- something that happens
- processing
- a problem a user has
- when the test is false
- a search bar
- 50
- 52
- Sports
- show the score
- goes to the last screen
- Test 3
- easy to read
- Hi, Kabir
- 15
- Cancel
- Design A
- a health app
- 3
- 9
- 2.19.0
- the build stage
- Yes
- ON
- 3
- less code to write
- track the order
- taking a photo
- 190
- fast-flashing lights
- 53
- 590
- OFF
- an input
- 2
- 2
- a permission
- input
- 120
Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students