Hallo Allerseits,
ich muss eine Kreistabelle mit Methoden erstellen. Der Radius soll bei 5 anfangen und dann immer um 5 erhöht werden. Dabei soll der Umfang und die Fläche berechnet werden.
So sieht meine Lösung aus:
Erste Frage: Kann ich Kreis k = new Kreis(radius); in einer Schleife einfügen, oder sollte man davon absehen? Mir kommt es falsch vor, aber es funktioniert zumindestens 
Nun kommt die Musterlösung:
Jetzt komme ich zur meiner zweiten Frage:
k.setRadius(r + i * dr); was passiert in der Zeile? Ich kapiers einfach nicht, bin mir aber sicher das die Antwort so simpel ist, das ich mir den Kopf gegen die Wand haue..
Also vielen Dank im voraus.
ich muss eine Kreistabelle mit Methoden erstellen. Der Radius soll bei 5 anfangen und dann immer um 5 erhöht werden. Dabei soll der Umfang und die Fläche berechnet werden.
So sieht meine Lösung aus:
Java:
package uebung05;
import javax.swing.JOptionPane;
public class Kreistabelle {
public static void main(String[] args) {
double radius;
String eingabe;
eingabe = JOptionPane.showInputDialog("Geben Sie den Startradius ein: ");
radius = Double.parseDouble(eingabe);
System.out.println("Radius:\t Umfang:\t Flaeche:\t");
for(int i = 0;i < 30;i++) {
Kreis k = new Kreis(radius);
System.out.println(radius + "\t" + k.getUmfang() + "\t" + k.getFlaeche());
radius += 5;
}
}
}
Nun kommt die Musterlösung:
Java:
package uebung05;
import javax.swing.JOptionPane;
public class Kreistabellemuster {
public static void main(String[] args) {
String kreisradius, erhoehung;
double r, dr;
kreisradius = JOptionPane
.showInputDialog("Geben Sie einen Kreisradius ein:");
erhoehung = JOptionPane
.showInputDialog("Geben Sie die Erhöhung ein:");
r = Double.parseDouble(kreisradius);
Kreis k = new Kreis(r);
dr = Double.parseDouble(erhoehung);
System.out.println("Radius\t\tUmfang\t\t\t\tFläche");
for (int i = 0; i < 30; i++) {
k.setRadius(r + i * dr);
System.out.println(k.getRadius() + "\t\t" + k.getUmfang() + "\t\t"
+ k.getFlaeche());
}
}
}
k.setRadius(r + i * dr); was passiert in der Zeile? Ich kapiers einfach nicht, bin mir aber sicher das die Antwort so simpel ist, das ich mir den Kopf gegen die Wand haue..
Also vielen Dank im voraus.
Zuletzt bearbeitet: