← Debugging: find the bug line lesson New set →

App Dev Worksheet: Debugging

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

Answer key

  1. line 4
  2. test it again
  3. people reading the code
  4. line 1
  5. 34
  6. 77
  7. 63
  8. 372
  9. find where it goes wrong
  10. 44
  11. line 3
  12. 27
  13. line 3
  14. 52
  15. line 2
  16. 82
  17. line 1
  18. 196
  19. a mistake in the code
  20. 74
  21. line 2
  22. 37
  23. 41
  24. 186
  25. line 3
  26. line 2
  27. line 2
  28. 34
  29. 81
  30. debugging
  31. 49
  32. 100
  33. 264
  34. line 1
  35. line 1
  36. 182
  37. 82
  38. line 1
  39. line 1
  40. 148

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