← Debugging: find the bug line lesson New set →

App Dev Worksheet: Debugging

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

Answer key

  1. 564
  2. 49
  3. line 3
  4. 54
  5. 80
  6. 84
  7. 40
  8. 37
  9. test it again
  10. a mistake in the code
  11. 140
  12. 62
  13. 68
  14. 33
  15. find where it goes wrong
  16. debugging
  17. 70
  18. 52
  19. 368
  20. 52
  21. 53
  22. line 2
  23. 31
  24. 240
  25. line 4
  26. line 1
  27. people reading the code
  28. line 2
  29. line 2
  30. 32
  31. 50
  32. line 1
  33. 57
  34. 39
  35. line 2
  36. 62
  37. line 1
  38. line 1
  39. line 2
  40. 80

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