CS173: Intro to Computer Science - Debugging
Activity Goals
The goals of this activity are:- To use the NetBeans Debugger to step through and identify bugs in code
The Activity
Directions
Consider the activity models and answer the questions provided. First reflect on these questions on your own briefly, before discussing and comparing your thoughts with your group. Appoint one member of your group to discuss your findings with the class, and the rest of the group should help that member prepare their response. Answer each question individually from the activity, and compare with your group to prepare for our whole-class discussion. After class, think about the questions in the reflective prompt and respond to those individually in your notebook. Report out on areas of disagreement or items for which you and your group identified alternative approaches. Write down and report out questions you encountered along the way for group discussion.Model 1: Using a Debugger to Trace Program Execution
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package numbergame; /** * * @author bill */ public class NumberGame { /** * @param args the command line arguments */ public static void main(String[] args) { int value = 6; int year = 2021; int birthYear = 1982; double intermediate = value * 2; intermediate += 5; intermediate *= 50; intermediate -= 250; intermediate += year; intermediate -= birthYear; int ageThisYear = ( int ) (intermediate % 100); System.out.println(ageThisYear); } } |
Questions
- Without using NetBeans, trace by hand through the program and update the values of each variable on paper.
- Add a watch on the
intermediate
variable. - Set a breakpoint to stop the program at line 26.
- After running the program to line 26, step through the program one line of code at a time until you reach the end. What variables change their values at each step, and to what values?
- Write a program that uses a math formula incorrectly. Exchange it with a partner, and use the debugger to try to find it. As you step through the program, ask yourself what the next value should be, and then step once to check that you're right, until you find the mistake.