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.True or false: a countdown hits zero is a tap event. (a) True (b) False
- 2.True or false: a word battle is a game. (a) False (b) True
- 3.🧰 In function tip(bill), what is bill? (a) a loop (b) an event (c) a parameter (d) a screen
-
4.🧩 How many inputs (text boxes, switches and sliders) does this screen have?
[title] Sign Up
[button] Done
[slider] Volume
[button] Back
[text box] Phone - 5.🧰 Why write a function? (a) to hide errors (b) to reuse code (c) to make code longer (d) to slow the app
- 6.💡 Does an app idea like a free study-room finder solve a real problem? (a) No (b) Yes
-
7.👆 The user taps the button 2 times. What number does the label show now?
let likes = 0;
button.onTap = function () {
if (likes < 3) {
likes = likes + 1;
}
label.text = likes;
}; -
8.🔀 What does this PIN rule show?
let pin = "16538";
if (pin.length === 4) {
show("PIN saved");
} else {
show("Use 4 digits");
} (a) PIN saved (b) Use 4 digits -
9.🧪 One test case fails. Which one?
🎟️ Rule: a ticket costs 50 for children under 14, and 100 for everyone else.
function price(age) {
if (age <= 14) {
return 50;
}
return 100;
}
Test 1: price(12) → expected 50
Test 2: price(16) → expected 100
Test 3: price(14) → expected 100 (a) Test 1 (b) Test 2 (c) Test 3 - 10.🧪 What is the actual result of a test? (a) what the app really does (b) what we hope for (c) the app’s name (d) the test’s number
-
11.🔀 What does this PIN rule show?
let pin = "841";
if (pin.length === 4) {
show("PIN saved");
} else {
show("Use 4 digits");
} (a) PIN saved (b) Use 4 digits -
12.🧰 What number does this code show?
function double(n) {
return n * 2;
}
show(double(11)); - 13.True or false: a clear word like Save is good button design. (a) False (b) True
- 14.True or false: working out a tip is an output. (a) True (b) False
-
15.🔁 What number does this code show?
let scores = [29, 42, 70, 72, 96];
let count = 0;
for (let i = 0; i < scores.length; i++) {
if (scores[i] >= 50) {
count = count + 1;
}
}
show(count); -
16.🔘 Our rule: buttons are at least 48 px tall. How many of these buttons follow the rule?
Start button: 64 px tall
Next button: 36 px tall
Send button: 64 px tall -
17.🧪 How many of these test cases pass?
📝 Rule: a quiz is passed with 8 or more right answers.
function result(right) {
if (right > 8) {
return "Pass";
}
return "Try again";
}
Test 1: result(9) → expected Pass
Test 2: result(7) → expected Try again
Test 3: result(8) → expected Pass - 18.🎯 Is this a user need or a feature: “Small text is hard”? (a) a user need (b) a feature
-
19.🧭 The app has tabs Feed, Chat, Settings. You start on Feed, then:
1. open “Badges”
2. tap Back
3. open “Map”
4. tap the Feed tab
5. open “Match report”
How many times must you tap Back to reach the main screen of this tab? - 20.True or false: a final design has no real colours. (a) True (b) False
-
21.🧩 How many buttons does this app screen have?
[title] Sign Up
[button] Back
[text box] Name
[text box] Email
[button] Cancel
[button] Save
[switch] Remind me
[text box] City -
22.📊 Survey: which problem bugs you most? How many more votes did “forgetting birthdays” get than “wasting pocket money”?
missing the bus: 10 votes
forgetting birthdays: 12 votes
wasting pocket money: 3 votes - 23.🧭 Which part of navigation switches main sections? (a) a tab bar (b) the back button (c) a menu button
-
24.🧰 What number does this code show?
function points(stars) {
return stars * 10 + 5;
}
show(points(2) + points(1)); -
25.💾 pop() takes off the last item. What does this code show?
let friends = ["Aman", "Zoya", "Arjun", "Meera"];
friends.pop();
show(friends[friends.length - 1]); (a) Meera (b) Aman (c) Zoya (d) Arjun - 26.🗒️ You are planning version 1 of a homework planner. Which feature can WAIT for a later version? (a) set a due date (b) add a homework task (c) see tasks by day (d) pick a theme colour
-
27.⚙️ What number does this app show?
let bill = 104; // typed by the user
let friends = 4; // typed by the user
let share = bill / friends;
show(share); -
28.♿ Our rule: text is at least 16 px. How many texts on this screen are too small?
Label: 10 px
Footer: 10 px
Hint: 24 px
Menu: 24 px
Body text: 22 px - 29.🔢 When you make an app, which comes first: “release it” or “plan the screens”? (a) plan the screens (b) release it
-
30.🧩 How many inputs (text boxes, switches and sliders) does this screen have?
[title] Sign Up
[text box] Due date
[button] Send
[button] Help
[slider] Brightness -
31.👆 Two designs for the same task (each arrow is one tap). How many taps does Design B need?
Design A: Home → Results → Pay → Search
Design B: Home → Search → Offers - 32.✏️ Is this true of a wireframe or of a final design: looks like the real app? (a) a final design (b) a wireframe
- 33.Which of these helps everyone use the app? (a) icons with no labels (b) strong colour contrast (c) sudden loud sounds (d) tiny tap areas
- 34.🐞 What is a bug? (a) a nice icon (b) a fast phone (c) a mistake in the code (d) a new feature
- 35.🔍 Which is the odd one out? (a) a result on screen (b) working out a tip (c) a beep sound (d) a pop-up message
-
36.⚙️ Which line does the processing (works out the answer)?
line 1: let price = 550; // typed by the user
line 2: let off = 20; // typed by the user
line 3: let pay = price - off;
line 4: show(pay); (a) line 1 (b) line 2 (c) line 4 (d) line 3 - 37.🔢 In a quiz-app flow, which comes first: “pick an answer” or “see if it is right”? (a) pick an answer (b) see if it is right
-
38.🔁 What is the LAST line this code shows?
let names = ["Zoya", "Arjun", "Meera"];
for (let i = 0; i < names.length; i++) {
show("Hi, " + names[i]);
} (a) Hi, Meera (b) Hi, Zoya (c) Hi, Arjun - 39.🧭 Which part of navigation shows 3 to 5 icons? (a) a menu button (b) the back button (c) a tab bar
-
40.🧰 A museum app works out the entry fee. What number does this code show?
function fee(age) {
if (age < 5) {
return 0;
}
return 50;
}
show(fee(7) + fee(4));
Answer key
- False
- True
- a parameter
- 2
- to reuse code
- Yes
- 2
- Use 4 digits
- Test 3
- what the app really does
- Use 4 digits
- 22
- True
- False
- 3
- 2
- 2
- a user need
- 1
- False
- 3
- 9
- a tab bar
- 40
- Arjun
- pick a theme colour
- 26
- 2
- plan the screens
- 2
- 2
- a final design
- strong colour contrast
- a mistake in the code
- working out a tip
- line 3
- pick an answer
- Hi, Meera
- a tab bar
- 50
Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students