0 Daumen
1,3k Aufrufe

Aufgabe:

Wir wollen ein Programm schreiben, das die Nullstellen von quadratischen Funktionen der Form \( f(x)=x^{2}+p x+q \) berechnet.

Die aus der Mathematik bekannte \( p q \)-Formel liefert uns die Nullstellen:
\( x_{1,2}=-\frac{p}{2} \pm \sqrt{\frac{p^{2}}{4}-q} \)

Wenn der Term unter der Wurzel negativ ist, hat die Funktion keine (reelle) Nullstelle; ist er gleich 0 , so gibt es genau eine Nullstelle.

Schreiben Sie ein Programm \( \mathrm{PQ} \), welches \( p \) und \( q \) als Parameter übergeben bekommt, die Nullstellen berechnet und ausgibt; geben Sie dabei zuerst die kleinere Nullstelle aus. Geben Sie anschließend aus, wie viele Nullstellen es gibt (Ausgabe nach dem Schema, „Es gibt 2 Nullstellen. "). Falls nicht genau 2 Argumente beim Programmaufruf angegeben werden, soll eine beliebige Fehlermeldung ausgegeben werden, die mit ERROR beginnt.

Avatar von

1 Antwort

0 Daumen

Antwort mit KI erzeugt

Nullstellenberechnung mit der PQ-Formel in Java

Um das Problem zu lösen, müssen wir ein Java-Programm schreiben, das die PQ-Formel implementiert. Wir folgen dabei der Aufgabenstellung:

1. Lesen der \( p \) und \( q \) Werte vom Benutzer.
2. Berechnung der Diskriminante (\( \frac{p^{2}}{4}-q \)).
3. Basierend auf der Diskriminante, Entscheidungen treffen:
- Wenn die Diskriminante negativ ist, gibt es keine reelle Nullstelle.
- Wenn die Diskriminante gleich 0 ist, gibt es genau eine Nullstelle.
- Wenn die Diskriminante positiv ist, gibt es zwei reelle Nullstellen.
4. Ausgabe der Ergebnisse.

Hier ist der notwendige Java-Code:

java
public class PQFormel {

    public static void main(String[] args) {
        // Überprüfen, ob genau zwei Argumente übergeben wurden
        if (args.length != 2) {
            System.out.println("ERROR: Bitte genau zwei Zahlen als Argumente übergeben.");
            return;
        }

        try {
            // Einlesen von p und q
            double p = Double.parseDouble(args[0]);
            double q = Double.parseDouble(args[1]);

            // Berechnung der Diskriminante
            double discriminant = Math.pow(p / 2, 2) - q;

            // Überprüfung der Diskriminante und Berechnung der Nullstellen
            if (discriminant > 0) {
                // Zwei Nullstellen
                double x1 = (-p / 2) + Math.sqrt(discriminant);
                double x2 = (-p / 2) - Math.sqrt(discriminant);
                System.out.println("x1: " + x1 + ", x2: " + x2);
                System.out.println("Es gibt 2 Nullstellen.");
            } else if (discriminant == 0) {
                // Eine Nullstelle
                double x = -p / 2;
                System.out.println("x: " + x);
                System.out.println("Es gibt 1 Nullstelle.");
            } else {
                // Keine reelle Nullstelle
                System.out.println("Es gibt keine reellen Nullstellen.");
            }
        } catch (NumberFormatException e) {
            System.out.println("ERROR: Bitte stellen Sie sicher, dass beide Argumente Zahlen sind.");
        }
    }
}


Anleitung zur Ausführung des Programms:

1. Speichern Sie den Code in einer Datei namens PQFormel.java.
2. Komplieren Sie das Programm mit dem Java-Compiler: javac PQFormel.java.
3. Führen Sie das Programm mit zwei Zahlen als Argumente aus: java PQFormel p q, wobei p und q durch die entsprechenden Zahlen ersetzt werden.

Beispiel für eine Ausführung:


java PQFormel 1 -6


In diesem Szenario würde die PQ-Formel für \( p=1 \) und \( q=-6 \) die Nullstellen der Funktion \( f(x)=x^{2}+x-6 \) berechnen und ausgeben.
Avatar von

Ein anderes Problem?

Stell deine Frage

Ähnliche Fragen

0 Daumen
1 Antwort
0 Daumen
1 Antwort
0 Daumen
2 Antworten

Willkommen bei der Stacklounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community