1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

QuadGleichung.java

Dieses Thema im Forum "OS X-Developer" wurde erstellt von mucke, 31.10.09.

  1. mucke

    mucke Celler Dickstiel

    Dabei seit:
    28.06.08
    Beiträge:
    798
    Hallo soll diese aufgabe hier lösen:

    Schreiben Sie ein Programm, das für drei beliebige ganze Zahlen a, b, c, die Lösung(en) der Glei- chung ax2 + bx + c = 0 berechnet. x sei dabei vom Typ float. Es sollen alle möglichen Fälle behandelt werden. Testen Sie das Programm mit folgenden Werten (zur Überprüfung sind die zu erwartenden Lösungen mit angegeben):
    (1, -8, 15)zwei Lösungen: 3.0 und 5.0
    (9, 6, 1)eine Lösung: -0,3333...
    (3, 2, 7)keine reellen Lösungen (
    0, 0, 0)unendlich viele Lösungen
    (0, 3, -2)eine Lösung: 0.6666... (
    0, 0, 5)keine Lösungen
    Hinweis: Die Wurzel berechnet sich mittels Math.sqrt(). Beispiel:
    x = Math.sqrt(y);
    Danach steht in x die Wurzel von y.


    /* QuadGleichung.java */

    public class QuadGleichung
    {
    public static void main (String[] args)
    {
    int a = 1;
    int b = -8;
    int c = 15;


    double x1F = -b/2+Math.sqrt(b*b/4-c);
    double x2F = -b/2-Math.sqrt(b*b/4-c);


    System.out.println(" x1 = " + x1F);
    System.out.println(" x2 = " + x2F);
    }
    }

    das habe ich bis jetzt auf die erste lösung komm ich aber wenn ich es mit den zweiten Zahlen probier komm ich net weiter
     
  2. Irgendein Held

    Irgendein Held Oberösterreichischer Brünerling

    Dabei seit:
    17.06.07
    Beiträge:
    714
    Mathematischer Fehler ;)
    Du hast ja 6x^2, was sagt dir das? Richtig, normieren. ;)
     
  3. mucke

    mucke Celler Dickstiel

    Dabei seit:
    28.06.08
    Beiträge:
    798
    Habs jetzt so gelöst, stimmt eigentlich alles soweit

    /* QuadGleichung.java */

    public class QuadGleichung
    {
    public static void main (String[] args)
    {
    int a = 9;
    int b = 6;
    int c = 1;
    float x1;
    float x2;

    double Dis =((b)*(b)-4*a*c);

    if (Dis > 0)
    {
    double x1F = ((-b+Math.sqrt(Dis))/(2*a));
    double x2F = ((-b-Math.sqrt(Dis))/(2*a));


    System.out.println(" x1 = " + x1F);
    System.out.println(" x2 = " + x2F);
    }
    else if ( Dis == 0)
    {
    double x1F = ((-b+Math.sqrt(Dis))/(2*a));
    System.out.println(" x1 = " + x1F + "doppelt");
    }
    else if ( Dis < 0)
    {System.out.println("keine loesung");
    }
    }
    }
     

Diese Seite empfehlen