Programmieren lernen mit Java (Buch)

...komplette Frage anzeigen

2 Antworten

Ist dein Problem grade, dass du das Programm nicht starten kannst oder dass dein Programm fehlerhaft ist? Falls du dein Programm per cmd.exe startest (sehr unschön), musst du im Ordner mit den CLASS-Dateien folgendes eingeben:

Pfad\zu\Java\bin\java.exe LoesungenQuadratischeGleichung

Dein Code an sich scheint keine nennenswerten Fehler zu haben. Ich denke, dass du das Zeichen ² einfach so mit in den String schreiben kannst, ohne den Unicode dafür zu schreiben.

Dir sollte allerdings auch klar sein, dass du die Diskriminante der allgemeinen Formel ausrechnest. Falls diese negativ ist, gibt es keine Lösung (weil aus der Diskriminante die Wurzel gezogen wird und es im reelen Zahlenbereich keine Lösung dafür gibt). Du prüfst allerdings, ob d kleiner als 0 ist ( d < 0 ) und falls das eintrifft, lässt du ausgeben, dass es 2 Lösungen gibt. Du scheinst einfach nur das Vergleichszeichen falsch gesetzt zu haben.

567Stephan 02.07.2014, 21:22

Danke für die ausführliche Antwort, du sagtest es ist sehr unschön das über cmd.exe zu machen. .. welche Möglichkeiten gibt es sonst noch ?

0
JavaTheHutt 03.07.2014, 11:42
@567Stephan

Wenn du eine IDE verwendest (z.B. Eclipse, IntelliJ, NetBeans) wird dein Code automatisch kompiliert und du musst nur einen Button / Taste drücken, um das Programm zu starten. Das nimmt dir einen Haufen monotone, immer wiederkehrende Aufgaben ab. Es ist zwar gut den Vorgang zu kennen, aber es ist auf Dauer nicht praktikabel, es immer wieder zu tun.

0

Ohne Code können wir leider nicht feststellen, wo der Fehler liegt

567Stephan 01.07.2014, 17:37

/* Programm zur Angabe der Loesungen quadratischer Gleichungen * Stephan Meyer * 2014-06-30

*/

import javax.swing.JOptionPane;

public class LoesungenQuadratischeGleichung { public static void main(String[] args) { double a, b, c, d; String eingabe, anderes;

eingabe = JOptionPane.showInputDialog("Gib für die Gleichung ax" + '\u00b2' + "+bx+c=0 den Wert für a ein: ");
a = Double.parseDouble(eingabe);
eingabe = JOptionPane.showInputDialog("Gib für die Gleichung ax" + '\u00b2' + "+bx+c=0 den Wert für b ein: ");
b = Double.parseDouble(eingabe);
eingabe = JOptionPane.showInputDialog("Gib für die Gleichung ax" + '\u00b2' + "+bx+c=0 den Wert für c ein: ");
c = Double.parseDouble(eingabe);

d = b * b - 4 * a * c;

if (d == 0) {
    JOptionPane.showMessageDialog(null, "Es gibt genau eine Loesung fuer diese Gleichung, naemlich " + d + "!");
} else { 
    if (d < 0) {
    JOptionPane.showMessageDialog(null, "Es gibt zwei Loesungen fuer diese Gleichung!");
    } else {
    JOptionPane.showMessageDialog(null, "Es gibt keine Loesung fuer diese Gleichung!");
    }
}
}

}

Wenn kleine Fehler entstanden sind komen die von eben weil ich hab das jetzt nochmal so gemacht(ich hattte nach meinem ersten Programm den Code aus dem Buch übernommen

0

Was möchtest Du wissen?