Hallo zusammen,
schulisch bedingt, muss ich mich derzeitig mit Java 6 auseinandersetzen. Derzeitig arbeiten wir an einem BMI-Rechner, bei dem in eine Klasse (Starter) mit main Methode der Vorname, Gewicht und Größe abgefragt wird. Diese Werte werden mit Get/Set an die statische Klasse Daten gesendet und dort mit einer Methode berechnet und mit der Get Methode wieder als Ergebnis aus der Main Klasse abgefragt wird.
Jetzt sollen wir es aber so machen, dass der berechnete BMI-Wert nicht in einer Methode zwischengespeichert wird, sondern einzeln als Variable in der Daten-Klasse berechnet und gespeichert wird. Leider weiß ich nicht, wie ich das tun soll.
Mein Ansatz ist, die Variable in der BMI-Set Methode zu speichern, aber leider bekomme ich immer 0.0 als Ergebnis raus, die Methode mit calcBmi funktioniert einwandfrei. Weiß jemand zufällig wie ich das richtig hinbekomme?
Ich weiß zwar, dass es hier ungern gesehen ist, Hausaufgaben reinzustellen, aber ich weiß nicht wie ich das richtig hinbekomme und finde auch keine Lösung im Internet🙃
Anbei der Code, den ich bisher hab.
PS: Die Werte v_bmi, sowie calcBmi(), habe ich hier nur als Notiz abgespeichert, da wir sie für diese Aufgaben nicht verwenden sollen .
Starter Klasse:
Daten-Klasse
schulisch bedingt, muss ich mich derzeitig mit Java 6 auseinandersetzen. Derzeitig arbeiten wir an einem BMI-Rechner, bei dem in eine Klasse (Starter) mit main Methode der Vorname, Gewicht und Größe abgefragt wird. Diese Werte werden mit Get/Set an die statische Klasse Daten gesendet und dort mit einer Methode berechnet und mit der Get Methode wieder als Ergebnis aus der Main Klasse abgefragt wird.
Jetzt sollen wir es aber so machen, dass der berechnete BMI-Wert nicht in einer Methode zwischengespeichert wird, sondern einzeln als Variable in der Daten-Klasse berechnet und gespeichert wird. Leider weiß ich nicht, wie ich das tun soll.
Mein Ansatz ist, die Variable in der BMI-Set Methode zu speichern, aber leider bekomme ich immer 0.0 als Ergebnis raus, die Methode mit calcBmi funktioniert einwandfrei. Weiß jemand zufällig wie ich das richtig hinbekomme?
Ich weiß zwar, dass es hier ungern gesehen ist, Hausaufgaben reinzustellen, aber ich weiß nicht wie ich das richtig hinbekomme und finde auch keine Lösung im Internet🙃
Anbei der Code, den ich bisher hab.
PS: Die Werte v_bmi, sowie calcBmi(), habe ich hier nur als Notiz abgespeichert, da wir sie für diese Aufgaben nicht verwenden sollen .
Starter Klasse:
Java:
package bmi;
import java.util.Scanner;
public class Starter {
public static void main(String[] args) {
Scanner tastatur;
tastatur = new Scanner(System.in);
Daten meineDaten;
meineDaten = new Daten();
double v_gewicht, v_groesse, v_bmi, bmigroesse;
String v_name;
System.out.println("Willkommen beim BMI-Rechner");
System.out.println("Bitte geben sie ihren Namen ein: ");
v_name = tastatur.next();
meineDaten.setVorname(v_name);
System.out.println("Bitte geben sie nun ihr Gewicht in kg ein: (Beispiel 56) ");
v_gewicht = tastatur.nextDouble();
meineDaten.setGewicht(v_gewicht);
System.out.println("Fahren sie mit ihrer Größe in cm fort: (Beispiel: 182) ");
v_groesse = tastatur.nextDouble();
meineDaten.setGroesse(v_groesse);
System.out.println("Danke für ihre Eingaben ");
System.out.println("Hallo " + meineDaten.getVorname());
System.out.println("Ihre eingegeben Daten lauten: ");
System.out.println("Name: " + meineDaten.getVorname());
System.out.println("Gewicht: " + meineDaten.getGewicht());
System.out.println("Größe: " + meineDaten.getGroesse());
//Ergebnis
//bmigroesse = (v_groesse/100) * (v_groesse/100);
v_bmi = v_gewicht / (v_groesse*v_groesse);
//System.out.println("Hallo " + meineDaten.getVorname() + " Dein BMI (in Start) ist: " + v_bmi);
//System.out.println("Hallo " + meineDaten.getVorname() + " Dein BMI (method) ist: " + meineDaten.calcBMI());
System.out.println("Hallo " + meineDaten.getVorname() + " Dein BMI (property) ist " + meineDaten.getBmi());
}
}
Daten-Klasse
Java:
package bmi;
public class Daten {
private String vorname;
public String getVorname() {
return vorname;
}
public void setVorname(String vorname) {
this.vorname = vorname;
}
private double gewicht;
public double getGewicht() {
return gewicht;
}
public void setGewicht(double gewicht) {
this.gewicht = gewicht;
}
private double groesse;
public double getGroesse() {
return groesse;
}
public void setGroesse(double groesse) {
this.groesse = groesse;
}
public double calcBMI(){
return gewicht/(groesse*groesse);
}
private double bmi;
public void setBmi(double bmi) {
this.bmi = gewicht/(groesse*groesse);
}
public double getBmi() {
return bmi;
}
}
Zuletzt bearbeitet von einem Moderator: