← Debugging: find the bug line lesson New set →

App Dev Worksheet: Debugging

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

Answer key

  1. people reading the code
  2. line 1
  3. find where it goes wrong
  4. 42
  5. line 1
  6. 82
  7. line 1
  8. 174
  9. 40
  10. 35
  11. 164
  12. 34
  13. 42
  14. 79
  15. line 4
  16. line 1
  17. test it again
  18. 56
  19. 36
  20. line 3
  21. 32
  22. line 1
  23. line 3
  24. 102
  25. line 1
  26. 192
  27. 53
  28. line 2
  29. 79
  30. 66
  31. line 4
  32. 74
  33. 53
  34. line 1
  35. line 1
  36. 32
  37. 28
  38. 79
  39. line 2
  40. line 3

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