K-EL/Komplexe Aufgabe 1

Aus ProgrammingWiki

Wiki-Quelltext dieser Seite.

<language>Java</language>
=Komplexe Übung=

'''Hinweis:''' Diese Übung ist Bestandteil der Kursinternen Bewertung. Für diese Aufgabe kannst du 10 Punkte sammeln. Löse die Aufgabe. Kopiere anschließend den Quelltext und füge diesen an der entsprechenden Stelle im Moodle-Kurs ein.

'''Aufgabenstellung''' 

Und noch mehr Mathe ... Es soll nun die Nullstellenformel für quadratische Funktionen umgesetzt werden. 
Solltest du dich nicht mehr an die (Mitternachts-)formel zur Berechnung der Nullstelle erinnern, hilft dir vielleicht dieser Kasten:
<popup name="Hinweis quadratische Funktion">
   $x_{1,2} = -\frac{p}{2} \pm \sqrt{(\frac{p^2}{4}-q)}$
 </popup>

Da jetzt neben ganzen Zahlen auch gebrochene Zahlen als Werte vorkommen können, werden alle Variablen als Datentyp <i>double</i> deklariert. Benutze zum Potenzieren (und Wurzelziehen) die Funktion Math.pow(b,e), welche wie folgt funktioniert:

Math.pow(b,e) berechnet den Wert von $b^e$. Dazu wird in den Klammern die Basis b und der Exponent e angegeben. Das folgende Beispiel verdeutlicht die Benutzung der Funktion Math.pow():

<run>
double potenz = Math.pow(4,2);
System.out.println("Das Ergebnis lautet: " + potenz);
</run>

'''Übung''' Natürlich kann man statt direkt Zahlen für b und e anzugeben auch Variablen angeben. Dann rechnet Math.pow() mit den Werten der Variablen. Verändere den Programmcode so, dass zwei Variablen $basis$ und $exponent$ vom Typ double angelegt und mit den Werten 5 und 3 belegt werden. Math.pow() soll dann mit den Variablen $basis$ und $exponent$ rechnen.

Gehe für die Lösung des Problems schrittweise vor:

* Fertige ein Struktogramm an, welches die einzelnen Schritte des Programms visualisiert
** Berechne zunächst den Ausdruck unter der Wurzel und speichere ihn in der Variable <b>unter_wurzel</b>. Achte darauf, dass diese Variable erst als Variable vom Typ <i>double</i> deklariert werden muss
** Berechne danach die Wurzel und speichere den Wert in der Variable <b>wurzel</b>. Auch diese muss erst als <i>double</i> deklariert werden.
** Berechne nun noch den ersten Bruch und speichere diesen Wert in der Variable <b>anfang</b>
** Berechne nun mit der Hilfe der Variablen <b>anfang</b> und <b>wurzel</b> die beiden Nullstellen und speichere deren Werte in den Variablen <b>x_1</b> und <b>x_2</b>

* Wenn du fertig bist, kopiere den Quelltext und füge Ihn im Moodle-Kurs an der entsprechenden Stelle ein.


<run id="4f8bd3a77d7fb">
// x_1 und x_2 speichern nachher die berechneten Nullstellen
double x_1; double x_2;

// p, q entsprechen den Faktoren einer quadrat. Funktion: x²+px+q
double p = 3;
double q = -10;

// hier kommen deine Deklarationen und Berechnungen für das Innere der Wurzel, die Wurzel, den Anfang ... hinein.

x_1 = 0.0; // Statt 0.0 kommt hier deine Berechnung für die erste NST
x_2 = 0.0; // Statt 0.0 kommt hier deine Berechnung für die zweite NST

System.out.println("Die Nullstellen lauten: x1 = " + x_1 + " sowie x2 = " + x_2);

</run>

''zur Kontrolle'' Die Nullstellen der Funktion $f(x) = x^2 - 2x$ lauten $x_1 = 0$ und $x_2 = 2$.