Forum / Grundlagen des Programmierens / 2. Hausübung, Beispiel 2.5
vor 12 Jahren
2. Hausübung, Beispiel 2.5
Ich beschäftige mich heute schon den ganzen Tag mit dem Beispiel 2.5, aber irgendwie komme ich nicht weiter.
Ich habe die Klassen zwar wie gefragt geschrieben, aber nun scheitere ich in der main methode. ich weiß nicht wie ich die Methoden aus der abstrakten Klasse Querschnitt aufrufen kann... Kann mir vl jemand weiterhelfen?
abstract class querschnitt {
double a, I;
double pi=3.14159265;
public void setquerschnitt(double a) {
this.a = a;
}
public double quadratisch() {
I = (a * a * a * a) / 12;
return I;
}
public double kreisfoermig() {
I = (a * a * a * a * pi) / 64;
return I;
}
public double Ifoermig() {
I = (a * a * a * a * 10) / 144;
return I;
}
}
class balken extends querschnitt {
public double F, l;
public balken(double a){
super();
}
public double getF() {
return F;
}
public double getI() {
return I;
}
public double getL() {
return l;
}
public void setF(double F) {
this.F = F;
}
public void setI(double I) {
this.I = I;
}
public void setL(double l) {
this.l = l;
}
}
class Auflagerbalken extends balken {
private double f;
public Auflagerbalken(double a){
super(a);
}
public double beidseitiggelagert() {
f = (F * l * l * l) / (48 * E * I);
return f;
}
}
class Kragtraeger extends balken{
private double f;
public Kragtraeger(double a){
super(a);
}
public double kragtraeger() {
f = (F * l * l * l) / (3 * E * I);
return f;
}
}
public class Aufgabe_5_1127551_2 {
public static void main (String[] args)
{
double F, a, l;
double E=210;
String q, q1, q2;
Scanner sc =new Scanner(System.in);
System.out.println("Willkommen zu Durchbiegung 2.0\n");
do {
System.out.println("Bitte geben Sie die gewünschte Kraft ein:");
F=sc.nextDouble();
System.out.println("Bitte geben Sie die gewünschte Trägerlänge ein:");
l=sc.nextDouble();
System.out.println("Bitte geben Sie die gewünschte Querschnittsgroesse"
+ " ein:");
a=sc.nextDouble();
System.out.println("Bitte geben Sie die gewünschte Querschnittsform an:");
q1=sc.nextLine();
System.out.println("Bitte geben Sie die gewünschte Belastungsart an:");
q2=sc.nextLine();
System.out.println("\nWollen Sie einen weiteren Programmdurchlauf starten?"
+ "[ja/nein]");
q=sc.nextLine();
} while ("ja".equals(q));
}
}
\n~~~
vor 12 Jahren
Weitere Lösungen siehe auch hier.
Grüße Alex
Sorry, die Kommentarfunktion ist geschlossen.
Christoph @Kiri
Wirtschaftsingenieur... · Technische Universit...
Hallo, ich habe jetzt versucht, dass Beispiel wie Patrick Lebinger zu lösen und es so zu programmieren, dass es die Variablen in der main Methode unter balken.setblabla speichert. Aber bei mir kommt immer die Meldung "non-static Method setblabla cannot be referenced from a static context". Weiß jemand, wie man diesen Fehler ausschalten kann?