Wo ist der Fehler? :(

Status
Nicht offen für weitere Antworten.

pumice

Mitglied
Bin im ersten semester :p
Habe hier 2 Klassen und eine Mainmethode und die Klasse Farbe übernimmt die wandflaeche nicht aus der Klasse Zimmer :(

Java:
public class Zimmer {
	
	public double breite;
	public double laenge;
	public int fenster;
	public int tueren;
	public static double wandhoehe = 2.3;
	
	Zimmer ( double breite, double laenge, int fenster, int tueren)
	{
		this.breite = breite;
		this.laenge = laenge;
		this.fenster = fenster;
		this.tueren = tueren;
	}
	
	public double getBreite ()
	{
		return breite;
	}
	
	public double getLaenge ()
	{
		return laenge;
	}
	
	public double getFenster ()
	{
		return fenster;
	}
	
	public double getTueren ()
	{
		return tueren;
	}
	
	public double getWandhoehe ()
	{
		return wandhoehe;
	}
	
	public double berechneWandflaeche ()
	{
		double wandflaeche = ((2 * 2.30 * breite + 2 * laenge * 2.30) - (1 * 2 * tueren) - (1.2 * 1 * fenster));
		return wandflaeche;
	}
}


public class Farbe {
	
	private String bezeichnung;
	private double verbrauch;
	private double preis;
	
	Farbe (String bezeichnung, double verbrauch, double preis)
	{
		this.bezeichnung = bezeichnung;
		this.verbrauch = verbrauch;
		this.preis = preis;
	}
	
	public String getBezeichnung ()
	{
		return bezeichnung;
	}
	
	public double berechneVerbrauch ()
	{
		double verbrauch = wandflaeche * verbrauch;
		return verbrauch;
	}
	
	public double berechnePreis ()
	{
		double preis = wandflaeche * preis;
		return preis;
	}
	
}


public class BedarfsUndPreisErmittler {
		
		public static void main(String [] args)
	{
		Zimmer kaisZimmer = new Zimmer (2.0, 3.0, 1, 1);
		Zimmer uschisZimmer = new Zimmer (2.0, 4.0, 3, 1);
		Zimmer helgesZimmer = new Zimmer (1.0, 2.0, 1, 2);
		Farbe rot = new Farbe ("mangentarot", 3.2, 2.30);
		Farbe weiss = new Farbe ("alpina", 0.4, 1.00);
		
		System.out.println("Kais Zimmer");
		System.out.println(kaisZimmer.getBreite());
		System.out.println(kaisZimmer.getLaenge());
		System.out.println(kaisZimmer.getFenster());
		System.out.println(kaisZimmer.getTueren());
		System.out.println(kaisZimmer.berechneWandflaeche());
		System.out.println(rot.getBezeichnung());
		System.out.println(rot.berechneVerbrauch());
		System.out.println(rot.berechnePreis());
		System.out.println(weiss.getBezeichnung());
		System.out.println(weiss.berechneVerbrauch());
		System.out.println(weiss.berechnePreis());
		System.out.println("Uschis Zimmer");
		System.out.println(uschisZimmer.getBreite());
		System.out.println(uschisZimmer.getLaenge());
		System.out.println(uschisZimmer.getFenster());
		System.out.println(uschisZimmer.getTueren());
		System.out.println(uschisZimmer.berechneWandflaeche());
		System.out.println(rot.getBezeichnung());
		System.out.println(rot.berechneVerbrauch());
		System.out.println(weiss.getBezeichnung());
		System.out.println(weiss.berechneVerbrauch());
		System.out.println(weiss.berechnePreis());
		System.out.println("Helges Zimmer");
		System.out.println(helgesZimmer.getBreite());
		System.out.println(helgesZimmer.getLaenge());
		System.out.println(helgesZimmer.getFenster());
		System.out.println(helgesZimmer.getTueren());
		System.out.println(helgesZimmer.berechneWandflaeche());
		System.out.println(rot.getBezeichnung());
		System.out.println(rot.berechneVerbrauch());
		System.out.println(rot.berechnePreis());
		System.out.println(weiss.getBezeichnung());
		System.out.println(weiss.berechneVerbrauch());
		System.out.println(weiss.berechnePreis());
		
	}	
		
}

das ganz schön viel aber ich hoffe ihr könnt mir helfen:(

Noctarius: Bitte Java-Tags nutzen
 
Zuletzt bearbeitet von einem Moderator:

André Uhres

Top Contributor
Übergib sie als Parameter:
rot.berechneVerbrauch( kaisZimmer.berechneWandflaeche() )
Java:
public double berechneVerbrauch(double wandflaeche) {
    return wandflaeche * verbrauch;
}
public double berechnePreis(double wandflaeche) {
    return wandflaeche * preis;
}
 
Zuletzt bearbeitet:

pumice

Mitglied
Danke für die schnelle antwort ja das hat geklappt:) aber jetzt zeigt der mir nen anderen fehler an
und zwar das einmal die farbe rot und weiss für kais uschis und helgas zimmer bezogen werden wie mach ich das??
 

pumice

Mitglied
also habe 3 objekte von zimmern.. und die sollen mit 2 verschiedenen objekten von farben bemalt werden oder es soll ausgerechnet wie der verbrauch ist. ich muss jetzt jede farbe einzelt zu den zimmern zuordnen in der main methode
ich weiß nciht wie ich das genau erklären soll :(
 

Landei

Top Contributor
- Gib den Zimmer-Konstruktor noch einen Parameter für ihren Namen mit ("Uschis Zimmer") u.s.w.
- Packe alle Zimmer in ein Array
- Packe alle Farben in ein Array
- nimm Schleifen

(ungetestet)
Java:
       Zimmer[] zimmer = new Zimmer[] {
              new Zimmer (2.0, 3.0, 1, 1, "Kais Zimmer"),
              new Zimmer (2.0, 4.0, 3, 1, "Uschis Zimmer"),
              new Zimmer (1.0, 2.0, 1, 2, "Helges Zimmer")
             };
       Farbe[] farben= new Farbe[] {
               new Farbe ("mangentarot", 3.2, 2.30),
               new Farbe ("alpina", 0.4, 1.00)
       };
       for(z : zimmer) {
               System.out.println(z.name());
               System.out.println(z.getBreite());
               System.out.println(z.getLaenge());
               System.out.println(z.getFenster());
               System.out.println(z.getTueren());
               double wandflaeche = z..berechneWandflaeche();
               System.out.println(wandflaeche);
               for(f : farben) {
                  System.out.println(f.getBezeichnung());
                  double verbrauch =  f.berechneVerbrauch(wandflaeche);
                  System.out.println(verbrauch);
                  System.out.println(f.berechnePreis(verbrauch));
              }
        }
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Oben