G
Guest
Gast
Folgendes Problem:
Anwender gibt Maße für 2 Boxen oder Quader ein, also Breite, Hoehe, Laenge.
Programm errechnet Mantelfläche und Volumen
und gibt darüber hinaus an, ob die 1. Box in die 2. Box passt und umgekehrt (jedoch werden nur die Hoehen, Breiten und Laengen miteinander verglichen, also keine Drehung der Box).
Dazu mein Code:
[/code]
Ich habe es sicherlich äußerst verkompliziert, in dem ich den Input des Anwenders in Methoden gesteckt habe, aber gerade so wollte ich das mal testen.
Mein Problem ist jetzt das folgende:
Wie kann ich auf die einzelnen Instanzvariablen der beiden beiden ersten Objekte der Klasse Box5 zugreifen, um in einer Methode gleichzeitig mit ihnen zu arbeiten?
Damit ist folgender Versuchsabschnitt von mir gemeint:
Über jegliche Hilfen und Hinweise würde ich mich sehr freuen. Danke im Voraus.
Anwender gibt Maße für 2 Boxen oder Quader ein, also Breite, Hoehe, Laenge.
Programm errechnet Mantelfläche und Volumen
und gibt darüber hinaus an, ob die 1. Box in die 2. Box passt und umgekehrt (jedoch werden nur die Hoehen, Breiten und Laengen miteinander verglichen, also keine Drehung der Box).
Dazu mein Code:
Code:
import java.io.*;
class Box5
{
BufferedReader stdin=new BufferedReader(new InputStreamReader(System.in));
private String inData;
private double breite, hoehe, laenge;
Box5()
{
}
public void breite() throws IOException
{
System.out.println("Breite:");
inData=stdin.readLine();
breite=Double.parseDouble(inData);
}
public void hoehe() throws IOException
{
System.out.println("Hoehe:");
inData=stdin.readLine();
hoehe=Double.parseDouble(inData);
}
public void laenge() throws IOException
{
System.out.println("Laenge:");
inData=stdin.readLine();
laenge=Double.parseDouble(inData);
}
public double flaeche()
{
return 2*(breite*hoehe+breite*laenge+hoehe*laenge);
}
public double volumen()
{
return breite*hoehe*laenge;
}
public double getBreite()
{
return breite;
}
public double getHoehe()
{
return hoehe;
}
public double getLaenge()
{
return laenge;
}
public boolean apasstIn(Box5 boxb)
{
return ( boxa.getBreite() > boxb.getBreite() && boxa.getHoehe() > boxb.getHoehe() && boxa.getLaenge() > boxb.getLaenge() );
}
public boolean bpasstIn(Box5 boxa)
{
return ( boxa.getBreite() < boxb.getBreite() && boxa.getHoehe() < boxb.getHoehe() && boxa.getLaenge() < boxb.getLaenge() );
}
}
class Kapitel335
{
public static void main (String [] args) throws IOException
{
Box5 boxa = new Box5();
System.out.println("Masse 1. Box");
boxa.breite();
boxa.hoehe();
boxa.laenge();
Box5 boxb = new Box5();
System.out.println("Masse 2. Box");
boxb.breite();
boxb.hoehe();
boxb.laenge();
System.out.println("1. Box:\t\tFlaeche: "+ boxa.flaeche() + "\tVolumen: "+ boxa.volumen() );
System.out.println("Breite: "+boxa.getBreite()+"\tHoehe: "+boxa.getHoehe()+"\tLaenge: "+boxa.getLaenge());
System.out.println("\n2. Box:\tFlaeche: "+ boxb.flaeche() + "\tVolumen: "+ boxb.volumen() );
System.out.println("Breite: "+boxb.getBreite()+"\tHoehe: "+boxb.getHoehe()+"\tLaenge: "+boxb.getLaenge());
if( boxa.apasstIn(boxb) )
System.out.println("Die 1. Box passt in die 2. Box hinein.");
if( boxb.bpasstIn(boxa) )
System.out.println("Die 2. Box passt in die 1. Box hinein.");
if( !( boxa.apasstIn(boxb) || boxb.bpasstIn(boxa) ) )
System.out.println("Keine Box passt in die andere.");
}
}
Ich habe es sicherlich äußerst verkompliziert, in dem ich den Input des Anwenders in Methoden gesteckt habe, aber gerade so wollte ich das mal testen.
Mein Problem ist jetzt das folgende:
Wie kann ich auf die einzelnen Instanzvariablen der beiden beiden ersten Objekte der Klasse Box5 zugreifen, um in einer Methode gleichzeitig mit ihnen zu arbeiten?
Damit ist folgender Versuchsabschnitt von mir gemeint:
Code:
public boolean apasstIn(Box5 boxb)
{
return ( boxa.getBreite() > boxb.getBreite() && boxa.getHoehe() > boxb.getHoehe() && boxa.getLaenge() > boxb.getLaenge() );
}
public boolean bpasstIn(Box5 boxa)
{
return ( boxa.getBreite() < boxb.getBreite() && boxa.getHoehe() < boxb.getHoehe() && boxa.getLaenge() < boxb.getLaenge() );
}
Über jegliche Hilfen und Hinweise würde ich mich sehr freuen. Danke im Voraus.