Java/PQ-Formel: Unterschied zwischen den Versionen
< Java
K (20 Versionen importiert) |
(akt) (Markierung: 2017-Quelltext-Bearbeitung) |
||
Zeile 1: | Zeile 1: | ||
− | {{ | + | {{Fortsetzung| |
− | Das folgende Beispiel eignet sich, um eine verschachtelte [[Java/Bedingte | + | vorher=Algorithmik<br>Turtle-Grafik|vorherlink=Java/Turtle-Grafik| |
+ | weiter=GUI|weiterlink=Java/GUI| | ||
+ | übersicht=Einstieg in Java<br>(Übersicht)|übersichtlink=Java#Übersicht|}} | ||
+ | |||
+ | Das folgende Beispiel eignet sich, um eine verschachtelte [[Java/Algorithmik#Bedingte Anweisung|if..else-Verzweigung]] einzuführen. <!---Die folgende Klasse ist das Endergebnis der beim Bildschirmfilm vorgestellten Klasse, die die pq-Formel berechnet.---> Neben „if..else“ benötigen Sie Kenntnisse im Umgang mit [[Java/Erste Schritte#Konsolenausgabe|System.out.println]] und der Klasse Math, diein Java standardmäßig vorhanden ist. | ||
+ | |||
+ | {{Box|Die Klasse Math.. | ist das Matheobjekt mit allen Operationen für einfache numerische Berechnungen.(...) Der Ergebnistyp fast aller Operationen ist <code>double</code>. | ||
+ | Wurzelziehen, Potenzen: sqrt, pow | ||
+ | double x = Math.sqrt( 2 ); doulbe y = Math.pow( 2,10 ); // 2^10 = 1024 | ||
+ | |Merksatz}} | ||
<source lang="java"> | <source lang="java"> | ||
Zeile 7: | Zeile 16: | ||
public String berechnePQFormel(double pP, double pQ){ | public String berechnePQFormel(double pP, double pQ){ | ||
double diskriminante; | double diskriminante; | ||
− | diskriminante = (pP/2)*(pP/2)-pQ; | + | diskriminante = (pP/2) * (pP/2) - pQ; |
if (diskriminante >= 0) { | if (diskriminante >= 0) { | ||
double x1,x2; | double x1,x2; | ||
Zeile 25: | Zeile 34: | ||
</source> | </source> | ||
− | ==Siehe auch== | + | {{Box|Arbeitshinweise| |
+ | <!---Schauen Sie sich zunächst den Bildschirmfilm zu dieser Klasse an.--->Beschreiben Sie, weshalb bei <code>berechnePQFormel()</code> innerhalb des ersten if-Anweisungsblocks noch ein zweiter, verschachtelter if-Block auftritt. Erläutern Sie dabei die Klammersetzung der geschweiften Klammern. | ||
+ | # <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? | ||
+ | # 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| | ||
+ | vorher=Algorithmik<br>Turtle-Grafik|vorherlink=Java/Turtle-Grafik| | ||
+ | weiter=GUI|weiterlink=Java/GUI| | ||
+ | übersicht=Einstieg in Java<br>(Übersicht)|übersichtlink=Java#Übersicht|}} | ||
+ | |||
+ | == Siehe auch == | ||
* [[Bild:ZUM-Logo.png|20px]] [http://informatik.zum.de/pieper/blog/index.php?entry=entry060920-121319 Zugehöriges Arbeitsblatt] und Bildschirmfilm. | * [[Bild:ZUM-Logo.png|20px]] [http://informatik.zum.de/pieper/blog/index.php?entry=entry060920-121319 Zugehöriges Arbeitsblatt] und Bildschirmfilm. | ||
− | + | * [[pq-Formel | |
− | |||
− | * [[pq-Formel | ||
* Mathematischer Hintergrund: [[Quadratische Funktion]] | * Mathematischer Hintergrund: [[Quadratische Funktion]] | ||
Version vom 19. August 2019, 06:13 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.
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;
}
}
{{Box|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
Zugehöriges Arbeitsblatt und Bildschirmfilm.
- [[pq-Formel
- Mathematischer Hintergrund: Quadratische Funktion