1_Algorithmus

 Documents

 39 views
of 104
All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
Description
Tipp: Das Online-Buch http://www.tigerjython.ch Algorithmus Ein Kochrezept, zum Beispiel: Kartoffelbrei Frage: Aus welchen zwei Teilen besteht ein Kochrezept ?…
Share
Transcript
Tipp: Das Online-Buch http://www.tigerjython.ch Algorithmus Ein Kochrezept, zum Beispiel: Kartoffelbrei Frage: Aus welchen zwei Teilen besteht ein Kochrezept ? Zutaten: 2 Kg Kartoffeln, 0,5 l Milch, 200 gr Butter, 1 TL Salz, 1 TLPfeffer, 1TL Muskat Zubereitung: Kartoffeln schälen, zerkleinern und in Salzwasser gar kochen. Mit dem Mörser zerstampfen und unter Hinzufügen der Butter und Milch mit dem Schneebesen schaumig schlagen und würzen. Ein Algorithmus ist - salopp ausgedrückt - ein Kochrezept Präziser: Ein Algorithmus ist ein Verfahren zur Lösung eines gegebenen Problems. Er hat folgende Eigenschaften: • schrittweise • eindeutig • endlich Was "schrittweise" bedeutet, muss in der konkreten Situation geklärt werden: Bei einem modernen Rechner bedeutet ein Schritt z.B: - Addition zweier Zahlen - Subtraktion zweier Zahlen - Multiplikation zweier Zahlen - Division zweier Zahlen - Vergleich zweier Zahlen mit <, , <,  Ein Schritt ist z.B. nicht der Vergleich dreier Zahlen wie z.B: 3 < 5 < 2 Aufgabe: Geben Sie ein Beispiel eines nicht endlichen "Kochrezepts": Auf der Suche nach einer Genehmigung in irgendeinem Amt: Der Pförtner schickt Sie ins Zimmer 10. Vom Zimmer 10 werden Sie ins Zimmer 17 geschickt. Vom Zimmer 17 werden Sie ins Zimmer 10 geschickt. 10 17 Frage: Welche Algorithmen haben Sie bis jetzt in der Schule kennengelernt ? - addieren, subtrahieren - multiplizieren, dividieren, - wurzelziehen - kgV - ggT Darstellungsmöglichkeiten eines Algorithmus • Flußdiagramm • Programmiersprache (z.B. C++) Elemente des Flußdiagramms Anfang bzw. Ende Anfang Ende Eingabe bzw. Ausgabe Anweisung Fallunterscheidung (Verzweigung) falsch Bedingung wahr kurz: f Bedingung w Flußrichtung Variablen (technisch gesehen sind dies Stellen im Arbeitsspeicher). Zum Beispiel wird eine Eingabe in einer Variablen gespeichert. Unter einer Variablen kann man sich einen Behälter vorstellen. In diesem Behälter wird ein Wert gespeichert (z.B. eine bestimmte Menge Flüssigkeit). Diese Menge bleibt solange konstant in diesem Behälter, solange sie nicht verändert wird. Diese Eigenschaft nennt man speichern. Es "verdunstet" deshalb auch nichts. Jede Variable hat einen Namen, den der Programmierer vergibt. Inhalt der Inhalt der Variablen z1 Variablen z2 z1 z2 Namen Namen einer einer Variablen Variablen Einer Variablen kann man einen Wert zuweisen (der Behälter kann gefüllt werden). Zum Beispiel: b := 0,5 Der Variablen b wird der Inhalt 0,5 zugewiesen (Der Behälter wird mit 0,5 gefüllt). Das Zeichen := bedeutet soviel wie "der Wert 0,5 rechts von := wird der linken Variablen zugewiesen" und ist auf keinen Fall mit dem aus der Mathematik bekannten Gleichheitszeichen = zu verwechseln ! b WICHTIG: Vor dieser Zuweisung hat die Variable b einen unbekannten Wert. Man sagt, die Variable hat einen undefinierten Wert. Einer Variablen kann man einen Wert zuweisen (der Behälter kann gefüllt werden). Zum Beispiel: b := 0,5 Links des Zeichens := muss genau eine Variable stehen. Rechts davon muss ein Wert oder ein aus 0,5 Variablen (und Werten) bestehender Term stehen, wie z.B. x+y*z oder x * 2 Wichtig: b Umgekehrt gemacht, ist es falsch: 0,5 := b oder x + y + z := b ist falsch. Was bewirkt die gleich folgende weitere Anweisung ? b := 0,5 b := 0,3 Der Variablen b wird der Inhalt 0,3 zugewiesen. 0,5 Der alte Wert von 0,5 wird überschrieben und geht verloren. b Was bewirkt folgende weitere Anweisung ? b := 0,5 b := 0,3 Der Variablen b wird der Inhalt 0,3 zugewiesen. Der alte Wert von 0,5 wird überschrieben und geht verloren. b Was bewirkt folgende weitere Anweisung ? b := 0,5 b := 0,3 Der Variablen b wird der Inhalt 0,3 zugewiesen. 0,3 Der alte Wert von 0,5 wird überschrieben und geht verloren. b Was würde das Gleichheitszeichen = bewirken ? b = 0,5 0,5 = 0,3 b = 0,3 0,3 Man sieht jetzt auch genau, was passieren würde, wenn man in der letzten Folie statt := das Gleichheitszeichen = verwenden würde. Was b würde mathematisch oben aus den zwei Gebilden folgen ? Also: Welche Werte haben die Variablen g und h ? g h Welche Werte haben die Variablen g und h ? ? ? g h Was bewirkt folgende Anweisung ? g := 0,3 ? ? g h Was bewirkt folgende Anweisung ? g := 0,3 ? g h Was bewirkt folgende Anweisung ? g := 0,3 0,3 ? g h Was bewirkt folgende weitere Anweisung ? g := 0,3 h := 0,5 0,3 ? g h Was bewirkt folgende weitere Anweisung ? g := 0,3 h := 0,5 0,3 g h Was bewirkt folgende weitere Anweisung ? g := 0,3 h := 0,5 0,3 0,5 g h Was bewirkt folgende weitere Anweisung ? g := 0,3 h := 0,5 g := h 0,3 0,5 g h Was bewirkt folgende weitere Anweisung ? g := 0,3 h := 0,5 g := h 0,5 g h Was bewirkt folgende weitere Anweisung ? Der Wert von h - also 0,5 - wird von h in den g := 0,3 Behälter g kopiert (nicht geleert, also nicht h := 0,5 verschieben). Der alte Wert von g wird überschrieben (er geht verloren, d.h. er wird g := h vorher gelöscht). D.h. nur der Wert der linken Variablen wird verändert. Der Wert der rechten Variablen bleibt unverändert. 0,5 Dies entspricht also z.B. nicht den Erfahrungen eines 0,5 durstigen, aber wenig Geld besitzenden Besuchers einer g Trinkherberge, der in einem günstigen Augenblick den h Inhalt des benachbarten Bierglases in den des seinen verschiebt. Bitte folgende Regel einhalten: Anfangsbuchstabe eines Variablennamens immer klein schreiben. Dies ist dem Compiler zwar egal, doch an diese Regel halten sich alle Programmierer. Aufgabe: Der Wasserstand des Neckars wird zweimal im Jahr (im Sommer und Winter) gemessen. Bestimmen Sie den maximalen Wasserstand, kurz ... Bestimmen Sie das Maximum zweier eingegebener Zahlen, wobei ... ... dies durch den Vergleich zweier Zahlen zu lösen ist. Auf einmal können nur 2 Zahlen verglichen werden, also keine 3 oder mehrere. Also, z.B: x
Related Search
We Need Your Support
Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

Thanks to everyone for your continued support.

No, Thanks