← Debugging: find the bug line lesson New set →

App Dev Worksheet: Debugging

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

Answer key

  1. people reading the code
  2. debugging
  3. 25
  4. 110
  5. 196
  6. 89
  7. test it again
  8. find where it goes wrong
  9. 92
  10. 46
  11. 40
  12. 85
  13. 69
  14. 84
  15. 90
  16. line 2
  17. 36
  18. 86
  19. 178
  20. a mistake in the code
  21. 164
  22. line 2
  23. line 3
  24. 36
  25. 76
  26. line 4
  27. 148
  28. line 2
  29. 44
  30. 43
  31. line 1
  32. line 3
  33. 41
  34. 66
  35. line 1
  36. 82
  37. line 2
  38. 24
  39. 134
  40. line 2

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