Java BMI Calculator

Oefening: BMI berekenen met Java klassen en objecten

Bekijk Opdracht
← Terug naar projecten

Opdracht Beschrijving

BMI Berekenen

Schrijf een klasse BMI die je Body Mass Index berekent. BMI is een maatstaf om vast te stellen in hoeverre je gewicht een gevaar vormt voor je gezondheid.

BMI Categorieën

  • Ondergewicht: BMI onder 20
  • Normaal: BMI tussen 20 en 25
  • Overgewicht: BMI boven 25

Formule

BMI = (gewicht in kg) / ((lengte in m) * (lengte in m))

Java Code

BMI Klasse

public class BMI {
    private double gewicht;
    private double lengte;

    public BMI(double gewicht, double lengte) {
        this.gewicht = gewicht;
        this.lengte = lengte;
    }

    public BMI() {
        this.gewicht = 50;
        this.lengte = 1.90;
    }

    public double berekenBMI() {
        return gewicht / (lengte * lengte);
    }

    public String berekenCategorie(double bmi) {
        String resultaat;
        if(bmi < 20) {
            resultaat = "onder normale gewicht";
        }
        else if (bmi <= 25) {
            resultaat = "normaal";
        }
        else {
            resultaat = "overgewicht";
        }
        return resultaat;
    }

    @Override
    public String toString() {
        return "BMI{" +
                "gewicht=" + gewicht +
                ", lengte=" + lengte +
                '}';
    }
}
}

TestBMI Klasse

public class TestBMI {
    public static void main(String[] args) {
        BMI b1 = new BMI(50, 1.55);
        BMI b2 = new BMI();

        System.out.println(b1);
        System.out.println(b2);

        double b1BerekendBMI = b1.berekenBMI();
        System.out.println("Het BMI voor een gewicht = 50 en een lengte van 1.55m IS");
        System.out.println(b1BerekendBMI);
        System.out.println(b1.berekenCategorie(b1BerekendBMI));

        double b2BerekendBMI = b2.berekenBMI();
        System.out.println("Het BMI voor een gewicht = 50 en een lengte van 1.90m IS");
        System.out.println(b2BerekendBMI);
        System.out.println(b2.berekenCategorie(b2BerekendBMI));
    }
}
}

Verwachte Output

Console Output

Het BMI voor een gewicht = 50 en een lengte van 1.55m IS
20.811654526534856
Het BMI voor een gewicht = 50 en een lengte van 1.55m IS
20.811654526534856 en betekent normaal
Het BMI voor een gewicht = 50 en een lengte van 1.9m IS 13.850415512465375
en betekent onder normale gewicht

Uitleg Output

  • Lijn 1: Alleen BMI berekening zonder categorie
  • Lijn 2: BMI + categorie voor object b1 (gewicht 50kg, lengte 1.55m)
  • Lijn 3: BMI + categorie voor object b2 (default: gewicht 50kg, lengte 1.90m)

Conclusie

✅ BMI klasse correct geïmplementeerd met constructors

✅ Methodes voor berekening en categorie werken

✅ Objecten aangemaakt en getest volgens opdracht

✅ Output komt overeen met verwachtingen