Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

10:sequenz [2018/06/03 22:53] (aktuell)
Zeile 1: Zeile 1:
 +====== Sequenz ======
 +Eine Folge nacheinander auszuführender Anweisungen heißt Sequenz.\\
 +Als Struktogramm werden die einzelnen Anweisungen in aufeinander folgenden Rechtecken dargestellt:​\\
 +{{:​10:​sequenz_struktogramm_allgemein.png?​nolink&​|}}\\
  
 +==== Beispiel: Berechnung der Oberfläche eines Quaders mit den Seitenlängen a, b und c ====
 +Die folgende Methode erwartet die Seitenlängen als Gleitkommazahlen in einer gleichen Längeneinheit und liefert die Oberfläche des Quaders in der zugehörigen Flächeneinheit zurück.
 +<​code>​
 +public double berechneOberflaeche(double a, double b, double c){
 +    double seitenflaeche1,​ seitenflaeche2,​ seitenflaeche3;​
 +    double oberflaeche;​
 +    seitenflaeche1 = a*b;
 +    seitenflaeche2 = a*c;
 +    seitenflaeche3 = b*c;
 +    oberflaeche = 2*(seitenflaeche1+seitenflaeche2+seitenflaeche3);​
 +    return oberflaeche;​
 +}
 +</​code>​
 +<​note>​Die angebenene Methode muss sich natürlich innerhalb der Definiton einer Klasse befinden, sonst ist der Quelltext nicht kompilierbar. Zum Ausprobieren erzeugst du ein Objekt (eine Instanz) der Klasse und rufst von ihm die Methode auf.</​note>​
 +Im Struktogramm werden Definition von Variablen meist nicht dargestellt:​ \\
 +{{:​10:​sequenz_struktogramm_oberflaeche_quader.png?​nolink&​|}}
 +
 +
 +
 +==== Aufgabe 1: Mitternachtsformel ====
 +Erstelle eine Methode, die zu einer quadratischen Gleichung eine Lösung ausgibt.\\
 +Tipp: Zur Berechnung einer Wurzel hilft dir die Funktion <​code>​Math.sqrt()</​code>​ weiter. So liefert Math.sqrt(16) zum Beispiel den Wert 4.
 +<hidden Lösungsvorschlag>​
 +
 +<​code>​
 +public double x1(double a, double b, double c){
 +   ​double diskriminante,​ wurzel, zaehler, ergebnis;
 +   
 +   ​diskriminante = b*b – 4*a*c;
 +   ​wurzel = Math.sqr(diskriminante);​
 +   ​zaehler = -b + wurzel;
 +   ​ergebnis = zaehler / (2*a);
 +   
 +   ​return ergebnis;
 +}
 +
 +</​code>​
 +
 +</​hidden>​
 +
 +
 +==== Aufgabe 2: Schnittpunkt von zwei Geraden ====
 +Erstelle eine Methode, die zu zwei linearen Funktionen f(x)=a<​sub>​1</​sub>​x+b<​sub>​1</​sub>​ und g(x)=a<​sub>​2</​sub>​x+b<​sub>​2</​sub>​ die Koordinaten des Schnittpunkts der beiden zugehörigen Graphen auf der Konsole ausgibt.\\
 +Falls du keine Idee hast, findest du hier ein Grundgerüst für die Methode:
 +<hidden Hilfe>
 +
 +<​code>​
 +public void berechneSchnittpunkt(double a1, double b1, double a2, double b2){
 +   ​double x, y;
 +   // Berechnung der Koordinaten
 +   
 +   // Ausgabe auf dem Bildschirm
 +   ​System.out.println("​Die Koordinaten des Schnittpunkts sind x = " ​ + x + " und y = " + y);   
 +}
 +
 +</​code>​
 +
 +</​hidden>​
 +
 +==== Aufgabe 3 (schwer): Scheitelpunkt einer quadratischen Funktion ====
 +Erstelle eine Methode, die zu zu einer quadratischen Funktion f(x)=ax<​sup>​2</​sup>​+bx+c die Koordinaten des Scheitels auf der Konsole ausgibt.\\
 +Tipp: Quadratische Ergänzung
 +
 +^ [[10:​algorithmische_strukturen|Zur Übersicht von algorithmischen Strukturen]] ^ [[10:​bedingte_anweisung|Weiter zur Bedingten Anweisung]] ^
Drucken/exportieren