← Debugging: find the bug line lesson New set →

App Dev Worksheet: Debugging

App development lesson 21: Debugging: find the bug line · Set 43 · 40 questions
TalentJR

Developer's tip (Compare with the comment): Read each line and its comment (after //): does the code do exactly that? Actual = run the lines as written. Expected = follow every comment. After the fix, test again.

NameDateTime takenScore ___ / 40
  1. 1.🐞 Each comment says what its line SHOULD do. Which line has the bug?
    line 1: let lives = 38; // start at 38
    line 2: lives = lives - 4; // take away 2
    line 3: lives = lives * 2; // double it
    line 4: lives = lives + 2; // add 2
    line 5: show(lives); // show it
    (a) line 4 (b) line 3 (c) line 1 (d) line 2
  2. 2.🐞 What is a good first step when an app gives a wrong result? (a) add more colours (b) find where it goes wrong (c) delete the app (d) buy a new phone
  3. 3.🐞 This code has a bug. What number SHOULD it show, if every line did what its comment says?
    line 1: let coins = 47; // start at 47
    line 2: coins = coins - 4; // add 4
    line 3: coins = coins + 3; // add 3
    line 4: coins = coins * 2; // double it
    line 5: show(coins); // show it
  4. 4.🐞 Each comment says what its line SHOULD do. Which line has the bug?
    line 1: let score = 43; // start at 43
    line 2: score = score * 3; // double it
    line 3: score = score - 1; // take away 1
    line 4: show(score); // show it
    (a) line 3 (b) line 1 (c) line 2
  5. 5.🐞 This code has a bug. What number does it ACTUALLY show?
    line 1: let score = 35; // start at 35
    line 2: score = score + 2; // add 2
    line 3: score = score + 5; // take away 5
    line 4: show(score); // show it
  6. 6.🐞 This code has a bug. What number does it ACTUALLY show?
    line 1: let coins = 40; // start at 40
    line 2: coins = coins + 2; // add 2
    line 3: coins = coins + 2; // double it
    line 4: coins = coins - 1; // take away 1
    line 5: show(coins); // show it
  7. 7.🐞 This code has a bug. What number does it ACTUALLY show?
    line 1: let lives = 33; // start at 33
    line 2: lives = lives + 2; // double it
    line 3: lives = lives * 2; // double it
    line 4: lives = lives * 2; // double it
    line 5: show(lives); // show it
  8. 8.🐞 This code has a bug. What number does it ACTUALLY show?
    line 1: let points = 33; // start at 33
    line 2: points = points - 3; // take away 3
    line 3: points = points + 3; // take away 3
    line 4: points = points * 2; // double it
    line 5: show(points); // show it
  9. 9.🐞 This code has a bug. What number SHOULD it show, if every line did what its comment says?
    line 1: let coins = 42; // start at 42
    line 2: coins = coins + 6; // add 6
    line 3: coins = coins - 3; // add 3
    line 4: show(coins); // show it
  10. 10.🐞 Each comment says what its line SHOULD do. Which line has the bug?
    line 1: let coins = 40; // start at 40
    line 2: coins = coins * 2; // double it
    line 3: coins = coins * 3; // double it
    line 4: coins = coins - 2; // take away 2
    line 5: show(coins); // show it
    (a) line 1 (b) line 4 (c) line 2 (d) line 3
  11. 11.🐞 A comment in code (after //) is for ___. (a) the battery (b) people reading the code (c) the app store (d) the phone screen
  12. 12.🐞 This code has a bug. What number SHOULD it show, if every line did what its comment says?
    line 1: let lives = 48; // start at 48
    line 2: lives = lives + 3; // add 3
    line 3: lives = lives * 2; // double it
    line 4: lives = lives + 2; // take away 2
    line 5: show(lives); // show it
  13. 13.🐞 Each comment says what its line SHOULD do. Which line has the bug?
    line 1: let lives = 46; // start at 46
    line 2: lives = lives * 2; // double it
    line 3: lives = lives - 5; // add 5
    line 4: show(lives); // show it
    (a) line 2 (b) line 1 (c) line 3
  14. 14.🐞 This code has a bug. What number SHOULD it show, if every line did what its comment says?
    line 1: let stars = 43; // start at 43
    line 2: stars = stars - 3; // take away 3
    line 3: stars = stars + 4; // take away 4
    line 4: stars = stars * 2; // double it
    line 5: show(stars); // show it
  15. 15.🐞 This code has a bug. What number does it ACTUALLY show?
    line 1: let points = 40; // start at 40
    line 2: points = points - 5; // take away 5
    line 3: points = points + 4; // add 3
    line 4: points = points - 5; // take away 5
    line 5: show(points); // show it
  16. 16.🐞 Each comment says what its line SHOULD do. Which line has the bug?
    line 1: let score = 34; // start at 34
    line 2: score = score - 1; // take away 1
    line 3: score = score * 2; // double it
    line 4: score = score * 3; // double it
    line 5: show(score); // show it
    (a) line 3 (b) line 1 (c) line 2 (d) line 4
  17. 17.🐞 Each comment says what its line SHOULD do. Which line has the bug?
    line 1: let points = 49; // start at 46
    line 2: points = points * 2; // double it
    line 3: points = points - 2; // take away 2
    line 4: show(points); // show it
    (a) line 3 (b) line 1 (c) line 2
  18. 18.🐞 This code has a bug. What number SHOULD it show, if every line did what its comment says?
    line 1: let coins = 35; // start at 35
    line 2: coins = coins - 2; // take away 2
    line 3: coins = coins - 2; // add 2
    line 4: show(coins); // show it
  19. 19.🐞 What is a bug? (a) a fast phone (b) a new feature (c) a nice icon (d) a mistake in the code
  20. 20.🐞 This code has a bug. What number SHOULD it show, if every line did what its comment says?
    line 1: let points = 34; // start at 34
    line 2: points = points - 4; // take away 3
    line 3: points = points * 2; // double it
    line 4: points = points - 5; // take away 5
    line 5: show(points); // show it
  21. 21.🐞 Each comment says what its line SHOULD do. Which line has the bug?
    line 1: let points = 42; // start at 42
    line 2: points = points * 2; // double it
    line 3: points = points + 5; // take away 5
    line 4: points = points + 3; // add 3
    line 5: show(points); // show it
    (a) line 1 (b) line 2 (c) line 4 (d) line 3
  22. 22.🐞 Each comment says what its line SHOULD do. Which line has the bug?
    line 1: let points = 43; // start at 43
    line 2: points = points - 6; // take away 4
    line 3: points = points * 2; // double it
    line 4: points = points - 4; // take away 4
    line 5: show(points); // show it
    (a) line 4 (b) line 2 (c) line 3 (d) line 1
  23. 23.🐞 Finding and fixing bugs is called ___. (a) downloading (b) debugging (c) decorating (d) designing
  24. 24.🐞 This code has a bug. What number SHOULD it show, if every line did what its comment says?
    line 1: let stars = 42; // start at 39
    line 2: stars = stars + 3; // add 3
    line 3: stars = stars * 2; // double it
    line 4: show(stars); // show it
  25. 25.🐞 This code has a bug. What number SHOULD it show, if every line did what its comment says?
    line 1: let score = 33; // start at 30
    line 2: score = score - 5; // take away 5
    line 3: score = score - 2; // take away 2
    line 4: score = score * 2; // double it
    line 5: show(score); // show it
  26. 26.🐞 Each comment says what its line SHOULD do. Which line has the bug?
    line 1: let lives = 41; // start at 41
    line 2: lives = lives - 2; // take away 2
    line 3: lives = lives + 5; // add 5
    line 4: lives = lives - 4; // take away 2
    line 5: show(lives); // show it
    (a) line 1 (b) line 3 (c) line 2 (d) line 4
  27. 27.🐞 Each comment says what its line SHOULD do. Which line has the bug?
    line 1: let points = 33; // start at 33
    line 2: points = points - 2; // add 2
    line 3: points = points - 2; // take away 2
    line 4: show(points); // show it
    (a) line 2 (b) line 1 (c) line 3
  28. 28.🐞 After fixing a bug you should ___. (a) never test (b) test it again (c) release at once (d) delete the test
  29. 29.🐞 This code has a bug. What number does it ACTUALLY show?
    line 1: let score = 31; // start at 31
    line 2: score = score - 8; // take away 5
    line 3: score = score + 2; // add 2
    line 4: score = score + 6; // add 6
    line 5: show(score); // show it
  30. 30.🐞 This code has a bug. What number does it ACTUALLY show?
    line 1: let score = 50; // start at 48
    line 2: score = score - 4; // take away 4
    line 3: score = score * 2; // double it
    line 4: show(score); // show it
  31. 31.🐞 This code has a bug. What number does it ACTUALLY show?
    line 1: let lives = 41; // start at 38
    line 2: lives = lives + 2; // add 2
    line 3: lives = lives - 4; // take away 4
    line 4: lives = lives + 4; // add 4
    line 5: show(lives); // show it
  32. 32.🐞 Each comment says what its line SHOULD do. Which line has the bug?
    line 1: let stars = 42; // start at 39
    line 2: stars = stars + 5; // add 5
    line 3: stars = stars + 4; // add 4
    line 4: stars = stars * 2; // double it
    line 5: show(stars); // show it
    (a) line 4 (b) line 1 (c) line 3 (d) line 2
  33. 33.🐞 This code has a bug. What number does it ACTUALLY show?
    line 1: let lives = 43; // start at 43
    line 2: lives = lives - 3; // take away 3
    line 3: lives = lives - 3; // add 3
    line 4: lives = lives + 4; // add 4
    line 5: show(lives); // show it
  34. 34.🐞 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 * 2; // double it
    line 3: points = points + 2; // add 2
    line 4: points = points + 9; // add 6
    line 5: show(points); // show it
    (a) line 3 (b) line 1 (c) line 4 (d) line 2
  35. 35.🐞 This code has a bug. What number SHOULD it show, if every line did what its comment says?
    line 1: let score = 41; // start at 40
    line 2: score = score * 2; // double it
    line 3: score = score - 2; // take away 2
    line 4: score = score - 3; // take away 3
    line 5: show(score); // show it
  36. 36.🐞 This code has a bug. What number does it ACTUALLY show?
    line 1: let score = 49; // start at 48
    line 2: score = score * 2; // double it
    line 3: score = score + 3; // add 3
    line 4: show(score); // show it
  37. 37.🐞 This code has a bug. What number does it ACTUALLY show?
    line 1: let score = 33; // start at 33
    line 2: score = score * 3; // double it
    line 3: score = score + 3; // add 3
    line 4: score = score + 2; // add 2
    line 5: show(score); // show it
  38. 38.🐞 This code has a bug. What number SHOULD it show, if every line did what its comment says?
    line 1: let score = 31; // start at 31
    line 2: score = score + 2; // take away 2
    line 3: score = score - 2; // take away 2
    line 4: score = score * 2; // double it
    line 5: show(score); // show it
  39. 39.🐞 Each comment says what its line SHOULD do. Which line has the bug?
    line 1: let lives = 42; // start at 42
    line 2: lives = lives + 2; // add 2
    line 3: lives = lives + 4; // add 4
    line 4: lives = lives + 2; // double it
    line 5: show(lives); // show it
    (a) line 1 (b) line 2 (c) line 4 (d) line 3
  40. 40.🐞 This code has a bug. What number does it ACTUALLY show?
    line 1: let points = 40; // start at 40
    line 2: points = points - 2; // take away 2
    line 3: points = points * 3; // double it
    line 4: points = points * 2; // double it
    line 5: show(points); // show it

Answer key

  1. line 2
  2. find where it goes wrong
  3. 108
  4. line 2
  5. 42
  6. 43
  7. 140
  8. 66
  9. 51
  10. line 3
  11. people reading the code
  12. 100
  13. line 3
  14. 72
  15. 34
  16. line 4
  17. line 1
  18. 35
  19. a mistake in the code
  20. 57
  21. line 3
  22. line 2
  23. debugging
  24. 84
  25. 46
  26. line 4
  27. line 2
  28. test it again
  29. 31
  30. 92
  31. 43
  32. line 1
  33. 41
  34. line 4
  35. 75
  36. 101
  37. 104
  38. 54
  39. line 4
  40. 228

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