Java/PQ-Formel: Unterschied zwischen den Versionen
Aus ZUM-Unterrichten
< Java
Keine Bearbeitungszusammenfassung Markierung: 2017-Quelltext-Bearbeitung |
Keine Bearbeitungszusammenfassung Markierung: 2017-Quelltext-Bearbeitung |
||
Zeile 40: | Zeile 40: | ||
# <code>bestimmeBetrag()</code> gibt den Betrag einer Zahl zurück (eine negative Zahl wird zu einer positiven. Analysieren Sie die Funktionsweise dieser Methode. | # <code>bestimmeBetrag()</code> gibt den Betrag einer Zahl zurück (eine negative Zahl wird zu einer positiven. Analysieren Sie die Funktionsweise dieser Methode. | ||
# Vergleichen Sie die beiden Varianten der quadrieren-Methoden. Beide führen zu demselben Ergebnis. Welche würden Sie bevorzugen? | # Vergleichen Sie die beiden Varianten der quadrieren-Methoden. Beide führen zu demselben Ergebnis. Welche würden Sie bevorzugen? | ||
# Implementieren Sie eine Methode <code>zieheWurzel(double pZahl)</code>, die entweder die Wurzelvon <code>pZahl</code> zurückgibt oder -1, falls <code>pZahl</code> negativ ist.(Hinweis: -1 ist natürlich mathematisch nicht richtig, aber so müssen Sie die Zahl, die Sie zurückgeben, nicht in einen String umwandeln.) | # Implementieren Sie eine Methode <code>zieheWurzel(double pZahl)</code>, die entweder die Wurzelvon <code>pZahl</code> zurückgibt oder -1, falls <code>pZahl</code> negativ ist.(Hinweis: -1 ist natürlich mathematisch nicht richtig, aber so müssen Sie die Zahl, die Sie zurückgeben, nicht in einen String umwandeln.)}} | ||
{{Fortsetzung| | {{Fortsetzung| |
Version vom 19. August 2019, 09:44 Uhr
Das folgende Beispiel eignet sich, um eine verschachtelte if..else-Verzweigung einzuführen. Neben „if..else“ benötigen Sie Kenntnisse im Umgang mit System.out.println und der Klasse Math, diein Java standardmäßig vorhanden ist.
Die Klasse Math ist das Matheobjekt mit allen Operationen für einfache numerische Berechnungen.(...) Der Ergebnistyp fast aller Operationen ist double
.
Wurzelziehen, Potenzen: sqrt, pow
double x = Math.sqrt( 2 ); doulbe y = Math.pow( 2,10 ); // 2^10 = 1024
public class Formelberechner
{
public String berechnePQFormel(double pP, double pQ){
double diskriminante;
diskriminante = (pP/2) * (pP/2) - pQ;
if (diskriminante >= 0) {
double x1,x2;
x1 = -(pP/2) + Math.sqrt (diskriminante);
x2 = -(pP/2) - Math.sqrt (diskriminante);
if (x1==x2){
return "Das Ergebnis ist L={"+x2+"}";
}
else {
return "Die Ergebnisse sind L={"+x1+";"+x2+"}";
}
}
else {
return "Keine Lösung, die Diskriminate ist "+diskriminante;
}
}
Arbeitshinweise
Beschreiben Sie, weshalb bei berechnePQFormel()
innerhalb des ersten if-Anweisungsblocks noch ein zweiter, verschachtelter if-Block auftritt. Erläutern Sie dabei die Klammersetzung der geschweiften Klammern.
bestimmeBetrag()
gibt den Betrag einer Zahl zurück (eine negative Zahl wird zu einer positiven. Analysieren Sie die Funktionsweise dieser Methode.- Vergleichen Sie die beiden Varianten der quadrieren-Methoden. Beide führen zu demselben Ergebnis. Welche würden Sie bevorzugen?
- Implementieren Sie eine Methode
zieheWurzel(double pZahl)
, die entweder die WurzelvonpZahl
zurückgibt oder -1, fallspZahl
negativ ist.(Hinweis: -1 ist natürlich mathematisch nicht richtig, aber so müssen Sie die Zahl, die Sie zurückgeben, nicht in einen String umwandeln.)
Siehe auch
- PQ-Formel
- Mathematischer Hintergrund: Quadratische Funktionen