← App development final test lesson New set →

App Dev Worksheet: Final Test

App development lesson 24: App development final test · Set 740 · 40 questions
TalentJR

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. 1.💾 What is a variable? (a) a phone setting (b) a picture (c) a type of screen (d) a named box for a value
  2. 2.🔘 Is this good or poor button design: strong colour contrast? (a) good design (b) poor design
  3. 3.Which of these is true of a menu button? (a) sits at the bottom (b) hides extra links (c) shows 3 to 5 icons (d) switches main sections
  4. 4.🔁 What number does this code show?
    let runs = [2, 3, 2, 18, 15];
    let total = 0;
    for (let i = 0; i < runs.length; i++) {
      total = total + runs[i];
    }
    show(total);
  5. 5.🧩 Which of these is a button on this screen?
    [title] Add Homework
    [text box] Email
    [button] Start
    [text box] Phone
    [button] Cancel
    [button] Help
    (a) Start (b) Email (c) Phone
  6. 6.🔍 Which is the odd one out? (a) a result on screen (b) checking a password (c) a pop-up message (d) a buzz (vibration)
  7. 7.🧪 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(750) → expected 40
    Test 2: delivery(800) → expected 0
    Test 3: delivery(950) → expected 0
  8. 8.🧪 Values right at a limit, like age 12 for “under 12”, are called ___. (a) old cases (b) easy cases (c) edge cases (d) phone cases
  9. 9.⚙️ What number does this app show?
    let price = 570; // typed by the user
    let off = 30; // typed by the user
    let pay = price - off;
    show(pay);
  10. 10.🔢 In a sign-up flow, which comes first: “tap “Sign up”” or “open the app”? (a) open the app (b) tap “Sign up”
  11. 11.🔘 Is this good or poor button design: space between buttons? (a) poor design (b) good design
  12. 12.🔁 What number does this code show?
    let steps = [29, 34, 22];
    let count = 0;
    for (let i = 0; i < steps.length; i++) {
      if (steps[i] >= 60) {
        count = count + 1;
      }
    }
    show(count);
  13. 13.🔐 Which permission does a weather-near-me app really need? (a) location (b) the camera (c) the microphone (d) contacts
  14. 14.🧰 What does this code show?
    function greet(name) {
      return "Well done, " + name + "!";
    }
    show(greet("Kabir"));
    (a) Well done, name! (b) Well done, Kabir! (c) greet (d) Kabir
  15. 15.👆 The user taps the button 3 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
  16. 16.🧪 A test case is an input together with its ___. (a) screen colour (b) font size (c) app icon (d) expected result
  17. 17.🔢 In a photo-post flow, which comes LAST? (a) open the camera screen (b) write a caption (c) take the photo (d) post the photo
  18. 18.📊 Survey: which problem bugs you most? How many students voted in all?
    forgetting birthdays: 7 votes
    losing water bottles: 5 votes
    missing the bus: 8 votes
  19. 19.🔍 Which is the odd one out? (a) typing your age (b) tapping a button (c) taking a photo (d) a pop-up message
  20. 20.🐞 Each comment says what its line SHOULD do. Which line has the bug?
    line 1: let points = 35; // start at 35
    line 2: points = points + 6; // add 6
    line 3: points = points + 4; // add 2
    line 4: points = points + 6; // add 6
    line 5: show(points); // show it
    (a) line 2 (b) line 1 (c) line 3 (d) line 4
  21. 21.🧰 What number does this code show?
    function double(n) {
      return n * 2;
    }
    show(double(19));
  22. 22.🧪 One test case fails. Which one?
    🚚 Rule: delivery is free (0) when the order is 300 or more; otherwise it costs 40.
    function delivery(total) {
      if (total > 300) {
        return 0;
      }
      return 40;
    }
    Test 1: delivery(300) → expected 0
    Test 2: delivery(600) → expected 0
    Test 3: delivery(100) → expected 40
    (a) Test 2 (b) Test 3 (c) Test 1
  23. 23.Which of these fits saving in the cloud? (a) a draft you are typing (b) a class leaderboard (c) your last game level (d) the sound on/off setting
  24. 24.🐞 A comment in code (after //) is for ___. (a) the app store (b) the phone screen (c) people reading the code (d) the battery
  25. 25.💡 Which app idea solves this problem: nobody knows whose bag it is? (a) a homework planner (b) a lost-and-found board (c) a medicine reminder (d) a study-room finder
  26. 26.🔘 Our rule: buttons are at least 48 px tall. The Cancel button is 20 px tall. How many px taller must it be?
  27. 27.True or false: you let friends try it at the test stage. (a) True (b) False
  28. 28.🌗 Is dark blue on black easy or hard to read on a button? (a) easy to read (b) hard to read
  29. 29.🐞 Each comment says what its line SHOULD do. Which line has the bug?
    line 1: let points = 37; // start at 37
    line 2: points = points - 2; // take away 2
    line 3: points = points - 4; // add 4
    line 4: show(points); // show it
    (a) line 2 (b) line 1 (c) line 3
  30. 30.Which of these is an input? (a) tap to Send (b) your saved notes (c) the game-over page (d) a switch for dark mode
  31. 31.🧰 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(8) + fee(12));
  32. 32.🖼️ In this wireframe (top to bottom), which part is at the very bottom?
    [ Add button ]
    [ filter buttons ]
    [ Save button ]
    [ big picture ]
    [ top bar ]
    (a) top bar (b) Add button (c) big picture (d) filter buttons
  33. 33.True or false: a wireframe shows the real fonts. (a) False (b) True
  34. 34.True or false: an app updates from the store. (a) True (b) False
  35. 35.🧩 How many inputs (text boxes, switches and sliders) does this screen have?
    [title] Add Homework
    [slider] Text size
    [text box] Email
    [button] Done
  36. 36.🐞 This code has a bug. What number does it ACTUALLY show?
    line 1: let points = 42; // start at 41
    line 2: points = points - 1; // take away 1
    line 3: points = points * 2; // double it
    line 4: show(points); // show it
  37. 37.📱 Which one has a web address: an app or a website? (a) a website (b) an app
  38. 38.🐞 What is a bug? (a) a new feature (b) a mistake in the code (c) a fast phone (d) a nice icon
  39. 39.🔢 In a food-order flow, which comes first: “pick a dish” or “track the order”? (a) track the order (b) pick a dish
  40. 40.🐞 Each comment says what its line SHOULD do. Which line has the bug?
    line 1: let score = 40; // start at 40
    line 2: score = score - 1; // take away 1
    line 3: score = score - 7; // take away 4
    line 4: score = score - 2; // take away 2
    line 5: show(score); // show it
    (a) line 3 (b) line 2 (c) line 4 (d) line 1

Answer key

  1. a named box for a value
  2. good design
  3. hides extra links
  4. 40
  5. Start
  6. checking a password
  7. 3
  8. edge cases
  9. 540
  10. open the app
  11. good design
  12. 0
  13. location
  14. Well done, Kabir!
  15. ON
  16. expected result
  17. post the photo
  18. 20
  19. a pop-up message
  20. line 3
  21. 38
  22. Test 1
  23. a class leaderboard
  24. people reading the code
  25. a lost-and-found board
  26. 28
  27. True
  28. hard to read
  29. line 3
  30. a switch for dark mode
  31. 40
  32. top bar
  33. False
  34. True
  35. 2
  36. 82
  37. a website
  38. a mistake in the code
  39. pick a dish
  40. line 3

Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students