← Debugging: find the bug line lesson New set →

App Dev Worksheet: Debugging

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

Answer key

  1. find where it goes wrong
  2. a mistake in the code
  3. 396
  4. 63
  5. debugging
  6. test it again
  7. line 1
  8. line 2
  9. line 3
  10. 195
  11. 27
  12. line 1
  13. 81
  14. 92
  15. 50
  16. 41
  17. line 2
  18. line 1
  19. line 1
  20. 35
  21. line 4
  22. 40
  23. 73
  24. line 1
  25. 50
  26. line 2
  27. line 3
  28. 35
  29. people reading the code
  30. 31
  31. line 2
  32. 41
  33. 48
  34. 48
  35. line 4
  36. line 3
  37. line 3
  38. line 3
  39. 102
  40. line 2

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