Solutions to the Try It Out Exercises in Beginning Programming with Java For Dummies, 6th Edition
by Barry Burd

Chapter 15: Creating New Java Methods

In this chapter:

One, two, three

public class Counter {
    int count = 0;

    void increment() {
        count++;
    }
}

public class Main {

    public static void main(String[] args) {
        var counter = new Counter();

        counter.increment();
        
        System.out.println(counter.count);
    }
}

Two, seven, nineteen

public class Counter {
    int count = 0;

    void increment(int byHowMuch) {
        count += byHowMuch;
    }
}

public class Main {

    public static void main(String[] args) {
        var counter = new Counter();

        counter.increment(1);
        counter.increment(6);
        counter.increment(12);

        System.out.println(counter.count);
    }
}

Move things around

The code doesn't run because the use of var isn't allowed when you declare a variable outside of a method.

Process purchases

public class Purchase {
    double unitPrice;
    int quantity;
    boolean taxable;
    
    double getTotal() {
        double total = unitPrice * quantity;
        if (taxable) {
            total *= 1.05;
        }
        return total;
    }
}


public class ProcessPurchases {

    public static void main(String[] args) {
        var purchase1 = new Purchase();
        purchase1.unitPrice = 20.00;
        purchase1.quantity = 3;
        purchase1.taxable = true;

        var purchase2 = new Purchase();
        purchase2.unitPrice = 20.00;
        purchase2.quantity = 3;
        purchase2.taxable = false;

        if (purchase1.getTotal() == purchase2.getTotal()) {
            System.out.println("No difference");
        } else {
            System.out.println("These purchases have different totals.");
        }
    }
}

Has your BMI changed since Chapter 17?

public class Person {
    double weight;
    double height;
    
    double getBmi() {
        return weight / (height * height);
    }
}


import java.util.Scanner;

public class FindBmi {

    public static void main(String[] args) {
        var keyboard = new Scanner(System.in);

        var person1 = new Person();
        System.out.println("Person 1");
        System.out.print("Weight? ");
        person1.weight = keyboard.nextDouble();
        System.out.print("Height? ");
        person1.height = keyboard.nextDouble();
        System.out.println();
        
        System.out.println("Person 2");
        var person2 = new Person();
        System.out.print("Weight? ");
        person2.weight = keyboard.nextDouble();
        System.out.print("Height? ");
        person2.height = keyboard.nextDouble();
        System.out.println();
        
        System.out.println("Person 3");
        var person3 = new Person();
        System.out.print("Weight? ");
        person3.weight = keyboard.nextDouble();
        System.out.print("Height? ");
        person3.height = keyboard.nextDouble();
        System.out.println();
        
        System.out.print("Person 1's BMI: ");
        System.out.println(person1.getBmi());
        
        System.out.print("Person 2's BMI: ");
        System.out.println(person2.getBmi());

        System.out.print("Person 3's BMI: ");
        System.out.println(person3.getBmi());

        keyboard.close();
    }

}

Two times nothing is still nothing

public class Thing {
    int value1;
    int value2;
    
    void display() {
        System.out.print("This thing has values ");
        System.out.print(value1);
        System.out.print(" and ");
        System.out.print(value2);
        System.out.println(".");
    }
}


import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner keyboard = new Scanner(System.in);

        var thing1 = new Thing();
        System.out.println("Thing 1");
        System.out.print("value1? ");
        thing1.value1 = keyboard.nextInt();
        System.out.print("value2? ");
        thing1.value2 = keyboard.nextInt();
        System.out.println();
        
        System.out.println("Thing 2");
        var thing2 = new Thing();
        System.out.print("value1? ");
        thing2.value1 = keyboard.nextInt();
        System.out.print("value2? ");
        thing2.value2 = keyboard.nextInt();
        System.out.println();
        
        System.out.println("Thing 3");
        var thing3 = new Thing();
        System.out.print("value1? ");
        thing3.value1 = keyboard.nextInt();
        System.out.print("value2? ");
        thing3.value2 = keyboard.nextInt();
        System.out.println();
        
        System.out.print("Thing 1: ");
        thing1.display();
        
        System.out.print("Thing 2: ");
        thing2.display();
        
        System.out.print("Thing 3: ");
        thing3.display();

        keyboard.close();
    }

}

More macroeconomics

public class Country {
    double debt;
    double gdp;
    
    boolean hasAcceptableRatio(double threshold) {
        return debt / gdp <= threshold;
    }
}


import java.util.Scanner;

public class DebtToGdbRatio {

    public static void main(String[] args) {
        var keyboard = new Scanner(System.in);

        var country1 = new Country();
        System.out.println("Country 1");
        System.out.print("Debt? ");
        country1.debt = keyboard.nextDouble();
        System.out.print("GDP? ");
        country1.gdp = keyboard.nextDouble();
        System.out.println();
        
        System.out.println("Country 2");
        var country2 = new Country();
        System.out.print("Debt? ");
        country2.debt = keyboard.nextDouble();
        System.out.print("GDP? ");
        country2.gdp = keyboard.nextDouble();
        System.out.println();
        
        System.out.println("Country 3");
        var country3 = new Country();
        System.out.print("Debt? ");
        country3.debt = keyboard.nextDouble();
        System.out.print("GDP? ");
        country3.gdp = keyboard.nextDouble();
        System.out.println();
        
        System.out.print("Acceptable debt-to-GDP ratio? ");
        double threshold = keyboard.nextDouble();
        System.out.println();
               
        System.out.print("Country 1's ratio is ");
        if (!country1.hasAcceptableRatio(threshold)) {
            System.out.print("not ");
        }
        System.out.println("acceptable.");
        
        System.out.print("Country 2's ratio is ");
        if (!country2.hasAcceptableRatio(threshold)) {
            System.out.print("not ");
        }
        System.out.println("acceptable.");
        
        System.out.print("Country 3's ratio is ");
        if (!country3.hasAcceptableRatio(threshold)) {
            System.out.print("not ");
        }
        System.out.println("acceptable.");
        
        keyboard.close();
    }

}