Step Tracker Class

Code

Prompt- StepTracker, object with a parameter that defines the minimum steps to be active

Required methods- addDailySteps activeDays averageSteps

public class StepTracker {
    private int days;
    private int activeDays;
    private int totalSteps;
    private int minActive;

    public StepTracker(int m) {
        minActive = m;
        days = 0;
        activeDays = 0;
        totalSteps = 0;
    }

    public int activeDays() {
        return activeDays;
    }

    public double averageSteps() {
        if (days == 0) {
            return 0.0;
        }
        return (double) totalSteps / days;
    }

    public void addDailySteps(int steps) {
        days++;
        totalSteps += steps;
        if (steps >= minActive) {
            activeDays++;
        }
    }
}

Instance Variables: keep track of how many total days we’ve recorded, how many total steps have been taken, and how many days are considered “active".

private int days;
private int activeDays;
private int totalSteps;
private int minActive;

Explicit sets the variables to 0

public StepTracker(int m) {
    minActive = m;
    days = 0;
    activeDays = 0;
    totalSteps = 0;
}

active days method: accessor method

public int activeDays() {
    return activeDays; 
}

average steps method: returns the average number of steps per day

public double averageSteps() {
    if (days == 0) {
        return 0.0;
    }
    return (double) totalSteps / days;
}

method to record number of steps per day

  • increments number of days
  • increments total steps by steps
  • if steps is greater than minActive increment days active
public void addDailySteps(int steps) {
    days++;
    totalSteps += steps;
    if (steps >= minActive) {
        activeDays++;
    }
}