Algorithmus: Unterschied zwischen den Versionen
K (1 Version importiert) |
(-l) Markierung: 2017-Quelltext-Bearbeitung |
||
(5 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 7: | Zeile 7: | ||
Aus dieser Definition sind folgende Eigenschaften eines Algorithmus ableitbar: | Aus dieser Definition sind folgende Eigenschaften eines Algorithmus ableitbar: | ||
# Das Verfahren muss in einem endlichen Text eindeutig beschreibbar sein (Finitheit). | |||
# Jeder Schritt des Verfahrens muss auch tatsächlich ausführbar sein (Ausführbarkeit). | #Das Verfahren muss in einem endlichen Text eindeutig beschreibbar sein (Finitheit). | ||
# Das Verfahren darf zu jedem Zeitpunkt nur endlich viel Speicherplatz benötigen (Dynamische Finitheit, Platzkomplexität). | #Jeder Schritt des Verfahrens muss auch tatsächlich ausführbar sein (Ausführbarkeit). | ||
# Das Verfahren darf nur endlich viele Schritte benötigen (Terminierung). | #Das Verfahren darf zu jedem Zeitpunkt nur endlich viel Speicherplatz benötigen (Dynamische Finitheit, Platzkomplexität). | ||
#Das Verfahren darf nur endlich viele Schritte benötigen (Terminierung). | |||
Darüber hinaus wird der Begriff Algorithmus in praktischen Bereichen oft auf die folgenden Eigenschaften eingeschränkt: | Darüber hinaus wird der Begriff Algorithmus in praktischen Bereichen oft auf die folgenden Eigenschaften eingeschränkt: | ||
# Der Algorithmus muss bei denselben Voraussetzungen das gleiche Ergebnis liefern (Determiniertheit). | |||
# Die nächste anzuwendende Regel im Verfahren ist zu jedem Zeitpunkt eindeutig definiert (Determinismus). | #Der Algorithmus muss bei denselben Voraussetzungen das gleiche Ergebnis liefern (Determiniertheit). | ||
#Die nächste anzuwendende Regel im Verfahren ist zu jedem Zeitpunkt eindeutig definiert (Determinismus). | |||
gekürzt aus: {{wpde|Algorithmus|Algorithmus}} | gekürzt aus: {{wpde|Algorithmus|Algorithmus}} | ||
=== Eigenschaften von Algorithmen === | ===Eigenschaften von Algorithmen=== | ||
;Allgemeingültigkeit: Der Algorithmus löst eine Menge gleicher Probleme, einer ganzen Problemklasse. | ;Allgemeingültigkeit:Der Algorithmus löst eine Menge gleicher Probleme, einer ganzen Problemklasse. | ||
;Wiederholbarkeit: Bei gleicher Voraussetzung liefert ein Algorithmus immer ein gleiches Ergebnis. | ;Wiederholbarkeit:Bei gleicher Voraussetzung liefert ein Algorithmus immer ein gleiches Ergebnis. | ||
;Eindeutigkeit: An jeder Stelle ist der nachfolgende Schritt eindeutig definiert. | ;Eindeutigkeit:An jeder Stelle ist der nachfolgende Schritt eindeutig definiert. | ||
;Endlichkeit/Terminiertheit: Der Algorithmus besteht aus einer endlichen Anzahl von Schritten und kommt immer zu einem Ende. Auch die Anweisungsfolge muss in einem endlichen Text beschrieben werden. | ;Endlichkeit/Terminiertheit:Der Algorithmus besteht aus einer endlichen Anzahl von Schritten und kommt immer zu einem Ende. Auch die Anweisungsfolge muss in einem endlichen Text beschrieben werden. | ||
;Ausführbarkeit: Die Anweisungen müssen ebenfalls verständlich formuliert und ausführbar sein. | ;Ausführbarkeit:Die Anweisungen müssen ebenfalls verständlich formuliert und ausführbar sein. | ||
=== Begriffsherkunft === | ===Begriffsherkunft=== | ||
Der Begriff Algorithmus stammt im Wesentlichen von Abu Abdallah Muhammad ibn Musa al-Khwarizmi, der im Jahr 825 das Buch „Al-kitab al-muchtasar fi hisab al-dschabr wa-l-muqabala“ veröffentlichte. Dieses Buch handelt von Regeln zur Wiederherstellung und Reduktion. Das Buch hatte großen Einfluss auf die arabische und europäische Mathematik. Es wurde auch ins lateinische übersetzt, dabei entwickelte sich aus dem Titel al-dschabr das Wort Algebra. Dieses Buch beginnt auch mit den Worten ”Dixit Algorithmi ...“, was so viel bedeutet wie ”Also sprach Algorithmi“. Dies ist eine Wortschöpfung, die vom Namen seines Geburtsortes al-Khwarizmi abgeleitet wurde. | Der Begriff Algorithmus stammt im Wesentlichen von Abu Abdallah Muhammad ibn Musa al-Khwarizmi, der im Jahr 825 das Buch „Al-kitab al-muchtasar fi hisab al-dschabr wa-l-muqabala“ veröffentlichte. Dieses Buch handelt von Regeln zur Wiederherstellung und Reduktion. Das Buch hatte großen Einfluss auf die arabische und europäische Mathematik. Es wurde auch ins lateinische übersetzt, dabei entwickelte sich aus dem Titel al-dschabr das Wort Algebra. Dieses Buch beginnt auch mit den Worten ”Dixit Algorithmi ...“, was so viel bedeutet wie ”Also sprach Algorithmi“. Dies ist eine Wortschöpfung, die vom Namen seines Geburtsortes al-Khwarizmi abgeleitet wurde. | ||
== | ==Struktogramm== | ||
Algorithmen werden in Struktogrammen dargestellt. | Algorithmen werden in Struktogrammen dargestellt. | ||
===Grundstrukturen=== | |||
====Anweisungsblock (Sequenz)==== | |||
[[Datei:seq.png]] | [[Datei:seq.png]] | ||
= Eine Folge von Anweisungen | = Eine Folge von Anweisungen | ||
====Schleifen (Wiederholungen)==== | |||
[[Datei:widerh.png]] | [[Datei:widerh.png]] | ||
Zeile 48: | Zeile 48: | ||
= Solange eine Bedingung erfüllt wird, wird die Aktion wiederholt. | = Solange eine Bedingung erfüllt wird, wird die Aktion wiederholt. | ||
=====Kopfgesteuerte Schleife===== | |||
[[Datei:solange.png]] | [[Datei:solange.png]] | ||
Zeile 54: | Zeile 54: | ||
= Solange eine Bedingung erfüllt wird, wird eine Aktion ausgeführt. | = Solange eine Bedingung erfüllt wird, wird eine Aktion ausgeführt. | ||
=====Fußgesteuerte Schleife===== | |||
[[Datei:bisbed.png]] | [[Datei:bisbed.png]] | ||
Zeile 60: | Zeile 60: | ||
= Eine Aktion wird solange ausgeführt, bis eine Bedingung erfüllt wird. | = Eine Aktion wird solange ausgeführt, bis eine Bedingung erfüllt wird. | ||
====bedingte Anweisung (Verzweigung)==== | |||
[[Datei:ja_nein.png]] | [[Datei:ja_nein.png]] | ||
= Wird eine Bedingung erfüllt (Ja), wird Aktion 1 ausgeführt. Wird die Bedingung nicht erfüllt (Nein), wird Aktion 2 ausgeführt | = Wird eine Bedingung erfüllt (Ja), wird Aktion 1 ausgeführt. Wird die Bedingung nicht erfüllt (Nein), wird Aktion 2 ausgeführt | ||
== Beispiele für Algorithmen == | ==Beispiele für Algorithmen== | ||
===[[Mathematik]]=== | ===[[Mathematik]]=== | ||
* Divisionsalgorithmus | |||
* Euklidischer Algorithmus | *Divisionsalgorithmus | ||
* Sieb des Eratosthenes zur Bestimmung von Primzahlen | *Euklidischer Algorithmus | ||
*Sieb des Eratosthenes zur Bestimmung von Primzahlen | |||
===[[Informatik]]=== | ===[[Informatik]]=== | ||
* {{wpde|Sortierverfahren}} | *{{wpde|Sortierverfahren}} | ||
==Alltagsalgorithmen== | |||
In unserem Alltag gibt es oft Situationen, bei denen wir Algorithmen benutzen. Wie zum Beispiel beim Kaffeekochen oder beim Computer-Hochfahren. Das Kaffeekochen und das Computer-Hochfahren sind Algorithmen, da man diese Vorgänge immer gleich ausübt. | In unserem Alltag gibt es oft Situationen, bei denen wir Algorithmen benutzen. Wie zum Beispiel beim Kaffeekochen oder beim Computer-Hochfahren. Das Kaffeekochen und das Computer-Hochfahren sind Algorithmen, da man diese Vorgänge immer gleich ausübt. | ||
Weitere Beispiele sind: | Weitere Beispiele sind: | ||
* Kochrezepte | *Kochrezepte | ||
* Spielen einer Melodie | *Spielen einer Melodie | ||
* Reparatur- und Bedienungsanleitungen | *Reparatur- und Bedienungsanleitungen | ||
* Hilfen zum Ausfüllen von Formularen | *Hilfen zum Ausfüllen von Formularen | ||
=== Algorithmus zum Kaffeekochen === | ===Algorithmus zum Kaffeekochen=== | ||
* Fülle Wasser in Kanne füllen | *Fülle Wasser in Kanne füllen | ||
* Kanne in Kaffeeautomaten setzen | *Kanne in Kaffeeautomaten setzen | ||
* Filter in Kaffeeautomaten legen | *Filter in Kaffeeautomaten legen | ||
* Kaffeepulver in Filter füllen | *Kaffeepulver in Filter füllen | ||
* Kaffeemaschine anschalten | *Kaffeemaschine anschalten | ||
* Tasse aus Schrank holen | *Tasse aus Schrank holen | ||
* Wenn Kaffee durchgelaufen ist, in Tasse gießen | *Wenn Kaffee durchgelaufen ist, in Tasse gießen | ||
=== Algorithmus zum Computer-Hochfahren === | ===Algorithmus zum Computer-Hochfahren=== | ||
* Startknopf des Computers drücken | *Startknopf des Computers drücken | ||
* Bildschirm einschalten | *Bildschirm einschalten | ||
* Computer hochfahren lassen | *Computer hochfahren lassen | ||
* Ein Konto aussuchen | *Ein Konto aussuchen | ||
* Passwort eingeben (sich anmelden) | *Passwort eingeben (sich anmelden) | ||
=== Algorithmus zum Schreiben und Absenden eines Briefes === | ===Algorithmus zum Schreiben und Absenden eines Briefes=== | ||
[[Datei:Struktogramm_Brief.gif|miniatur|400px|Algorithmus zum Schreiben und Absenden eines Briefes]] | [[Datei:Struktogramm_Brief.gif|miniatur|400px|Algorithmus zum Schreiben und Absenden eines Briefes]] | ||
* Text auf Blatt schreiben | |||
* Blatt in Umschlag stecken | *Text auf Blatt schreiben | ||
* Umschlag zukleben | *Blatt in Umschlag stecken | ||
* Wenn Adresse des Empfängers bekannt, dann schreibe Adresse auf Umschlag, sonst suche Adresse im Adressbuch und schreibe Adresse auf den Umschlag | *Umschlag zukleben | ||
* Eine Poststation aufsuchen | *Wenn Adresse des Empfängers bekannt, dann schreibe Adresse auf Umschlag, sonst suche Adresse im Adressbuch und schreibe Adresse auf den Umschlag | ||
* Wenn Briefgewicht < 20 Gramm, dann kaufe 55-Cent-Briefmarke, sonst kaufe 90-Cent-Briefmarke | *Eine Poststation aufsuchen | ||
* Briefmarke aufkleben | *Wenn Briefgewicht < 20 Gramm, dann kaufe 55-Cent-Briefmarke, sonst kaufe 90-Cent-Briefmarke | ||
* Brief absenden | *Briefmarke aufkleben | ||
*Brief absenden | |||
{{clear}} | {{clear}} | ||
=== Algorithmus zum Zähneputzen === | ===Algorithmus zum Zähneputzen=== | ||
[[Datei:wiki2.gif|miniatur|400px|zentriert|Algorithmus zum Zähneputzen]] | [[Datei:wiki2.gif|miniatur|400px|zentriert|Algorithmus zum Zähneputzen]] | ||
Beim Zähneputzen kann das Problem auftreten, dass die Zahnpastatube leer ist und man diese wechseln muss. Bei voller Tube nimmt man sie weiterhin, jedoch beim Leeren der Pasta muss man entweder eine neue aus dem Schrank nehmen oder, falls keine da ist, in den Laden gehen und eine kaufen. | Beim Zähneputzen kann das Problem auftreten, dass die Zahnpastatube leer ist und man diese wechseln muss. Bei voller Tube nimmt man sie weiterhin, jedoch beim Leeren der Pasta muss man entweder eine neue aus dem Schrank nehmen oder, falls keine da ist, in den Laden gehen und eine kaufen. | ||
Zeile 122: | Zeile 123: | ||
{{clear}} | {{clear}} | ||
=== Algorithmus zum Bestimmen von Mineralien === | ===Algorithmus zum Bestimmen von Mineralien=== | ||
Problemstellung: Man besitzt zwei Mineralien (Smaragd und Rubin), die zu bestimmen sind. | Problemstellung: Man besitzt zwei Mineralien (Smaragd und Rubin), die zu bestimmen sind. | ||
Zeile 128: | Zeile 129: | ||
{{clear}} | {{clear}} | ||
=== Algorithmus zum Fensteröffnen === | ===Algorithmus zum Fensteröffnen=== | ||
[[Bild:Fenster Öffnen.gif|miniatur|400px|Algorithmus zum Fensteröffnen]] | [[Bild:Fenster Öffnen.gif|miniatur|400px|Algorithmus zum Fensteröffnen]] | ||
* | *wenn man sitzt, dann aufstehen | ||
* | *zum Fenster gehen | ||
* | *zum Ankippen den Hebel nach oben drehen | ||
* | *zum Öffnen den Hebel in die Waagerechte bringen | ||
{{clear}} | {{clear}} | ||
===Auto fahren=== | |||
'''Algorithmus zum Motor starten und Losfahren eines Autos mit Automatikgetriebe''' | |||
*Zündung betätigen | |||
*Licht einschalten | |||
*Handbremse oder Parkbremse lösen | |||
*Gang auf „Drive“ oder „Fahren“ schalten | |||
*Gaspedal betätigen | |||
===„Mc Drive“=== | |||
*An Ausgabeluke heranfahren | |||
*Bestellung abgeben | |||
*Bezahlen | |||
*Bestellung entgegennehmen | |||
*Wegfahren | |||
==Spezielle Algorithmen und Algorithmusklassen== | ==Spezielle Algorithmen und Algorithmusklassen== | ||
Zeile 142: | Zeile 162: | ||
{{Zitat wpde| | {{Zitat wpde| | ||
Die Grundidee genetischer Algorithmen ist, ähnlich der | Die Grundidee genetischer Algorithmen ist, ähnlich der biologischen Evolution] eine Anzahl Lösungskandidaten (Individuen) zufällig zu erzeugen und diejenigen auszuwählen, die einem bestimmten Gütekriterium am besten entsprechen. Deren Eigenschaften (Parameterwerte) werden dann leicht verändert und miteinander kombiniert, um neue Lösungskandidaten (eine neue Generation) zu erzeugen. | ||
|Genetischer Algorithmus|21.05.06}} | |Genetischer Algorithmus|21.05.06}} | ||
* [http://techni.tachemie.uni-leipzig.de/jsga/applications/jsgaapplications.html Beispiele in Java] mit Links und Literaturhinweisen | |||
* [http://www.zitadelle.juel.nw.schule.de/if/java/Algorithmen/GenAlg/start.html Einführung für den Unterricht] mit Beipielen in [[Java]]. | *[http://techni.tachemie.uni-leipzig.de/jsga/applications/jsgaapplications.html Beispiele in Java] mit Links und Literaturhinweisen | ||
*[http://www.zitadelle.juel.nw.schule.de/if/java/Algorithmen/GenAlg/start.html Einführung für den Unterricht] mit Beipielen in [[Java]]. | |||
==Algorithmus der Woche beim Informatikjahr== | ==Algorithmus der Woche beim Informatikjahr== | ||
* [http://www-i1.informatik.rwth-aachen.de/~algorithmus/liste.php Algorithmus der Woche] | *[http://www-i1.informatik.rwth-aachen.de/~algorithmus/liste.php Algorithmus der Woche] | ||
Binäre Suche | Binäre Suche | ||
Zeile 174: | Zeile 195: | ||
Der Einstieg in eine Unterrichtseinheit zu Algorithmen kann auch über einen Lehrtext geschehen. Hier ein Beispiel zu einem Lehrtext, der auch Aufgaben zu unterschiedlichen Kompetenzstufen enthält: {{pdf|Lehrtext zu Algorithmen.pdf|Lehrtext zu Algorithmen}} | Der Einstieg in eine Unterrichtseinheit zu Algorithmen kann auch über einen Lehrtext geschehen. Hier ein Beispiel zu einem Lehrtext, der auch Aufgaben zu unterschiedlichen Kompetenzstufen enthält: {{pdf|Lehrtext zu Algorithmen.pdf|Lehrtext zu Algorithmen}} | ||
== Weblinks == | ==Weblinks== | ||
*{{wpde|Liste von Algorithmen}} | |||
*selfhtml: [https://wiki.selfhtml.org/wiki/Programmiertechnik/Programmierlogik Einführung in die Programmierlogik] | |||
*[http://www.faust.fr.bw.schule.de/mhb/eratosib.htm Sieb des Eratosthenes] | |||
[[Kategorie:Informatik]] | [[Kategorie:Informatik]] | ||
[[Kategorie: | [[Kategorie:Unterrichtsidee]] | ||
[[Kategorie:Fächerverbindendes Thema]] | [[Kategorie:Fächerverbindendes Thema]] |
Aktuelle Version vom 17. Mai 2022, 11:49 Uhr
Ein Algorithmus (auch genannt Lösungsverfahren) ist eine Handlungsvorschrift zur Lösung eines Problems in endlich vielen Schritten. Diese Verarbeitunsgsvorschrift besteht aus einer endlichen Folge von eindeutig ausführbaren Anweisungen, welche bei gleichen Voraussetzungen immer gleiche Ergebnise liefert. Der Algorithmus wird durch einen aus elementaren Anweisungen bestehenden Text beschrieben.
Definition und Eigenschaften eines Algorithmus
Mit Hilfe des Begriffs der Turing-Maschine kann folgende formale Definition des Begriffs formuliert werden:
Eine Berechnungsvorschrift zur Lösung eines Problems heißt genau dann Algorithmus, wenn eine zu dieser Berechnungsvorschrift äquivalente Turingmaschine existiert, die für jede Eingabe, die eine Lösung besitzt, stoppt.
Aus dieser Definition sind folgende Eigenschaften eines Algorithmus ableitbar:
- Das Verfahren muss in einem endlichen Text eindeutig beschreibbar sein (Finitheit).
- Jeder Schritt des Verfahrens muss auch tatsächlich ausführbar sein (Ausführbarkeit).
- Das Verfahren darf zu jedem Zeitpunkt nur endlich viel Speicherplatz benötigen (Dynamische Finitheit, Platzkomplexität).
- Das Verfahren darf nur endlich viele Schritte benötigen (Terminierung).
Darüber hinaus wird der Begriff Algorithmus in praktischen Bereichen oft auf die folgenden Eigenschaften eingeschränkt:
- Der Algorithmus muss bei denselben Voraussetzungen das gleiche Ergebnis liefern (Determiniertheit).
- Die nächste anzuwendende Regel im Verfahren ist zu jedem Zeitpunkt eindeutig definiert (Determinismus).
gekürzt aus: Algorithmus
Eigenschaften von Algorithmen
- Allgemeingültigkeit
- Der Algorithmus löst eine Menge gleicher Probleme, einer ganzen Problemklasse.
- Wiederholbarkeit
- Bei gleicher Voraussetzung liefert ein Algorithmus immer ein gleiches Ergebnis.
- Eindeutigkeit
- An jeder Stelle ist der nachfolgende Schritt eindeutig definiert.
- Endlichkeit/Terminiertheit
- Der Algorithmus besteht aus einer endlichen Anzahl von Schritten und kommt immer zu einem Ende. Auch die Anweisungsfolge muss in einem endlichen Text beschrieben werden.
- Ausführbarkeit
- Die Anweisungen müssen ebenfalls verständlich formuliert und ausführbar sein.
Begriffsherkunft
Der Begriff Algorithmus stammt im Wesentlichen von Abu Abdallah Muhammad ibn Musa al-Khwarizmi, der im Jahr 825 das Buch „Al-kitab al-muchtasar fi hisab al-dschabr wa-l-muqabala“ veröffentlichte. Dieses Buch handelt von Regeln zur Wiederherstellung und Reduktion. Das Buch hatte großen Einfluss auf die arabische und europäische Mathematik. Es wurde auch ins lateinische übersetzt, dabei entwickelte sich aus dem Titel al-dschabr das Wort Algebra. Dieses Buch beginnt auch mit den Worten ”Dixit Algorithmi ...“, was so viel bedeutet wie ”Also sprach Algorithmi“. Dies ist eine Wortschöpfung, die vom Namen seines Geburtsortes al-Khwarizmi abgeleitet wurde.
Struktogramm
Algorithmen werden in Struktogrammen dargestellt.
Grundstrukturen
Anweisungsblock (Sequenz)
= Eine Folge von Anweisungen
Schleifen (Wiederholungen)
= Solange eine Bedingung erfüllt wird, wird die Aktion wiederholt.
Kopfgesteuerte Schleife
= Solange eine Bedingung erfüllt wird, wird eine Aktion ausgeführt.
Fußgesteuerte Schleife
= Eine Aktion wird solange ausgeführt, bis eine Bedingung erfüllt wird.
bedingte Anweisung (Verzweigung)
= Wird eine Bedingung erfüllt (Ja), wird Aktion 1 ausgeführt. Wird die Bedingung nicht erfüllt (Nein), wird Aktion 2 ausgeführt
Beispiele für Algorithmen
Mathematik
- Divisionsalgorithmus
- Euklidischer Algorithmus
- Sieb des Eratosthenes zur Bestimmung von Primzahlen
Informatik
Alltagsalgorithmen
In unserem Alltag gibt es oft Situationen, bei denen wir Algorithmen benutzen. Wie zum Beispiel beim Kaffeekochen oder beim Computer-Hochfahren. Das Kaffeekochen und das Computer-Hochfahren sind Algorithmen, da man diese Vorgänge immer gleich ausübt.
Weitere Beispiele sind:
- Kochrezepte
- Spielen einer Melodie
- Reparatur- und Bedienungsanleitungen
- Hilfen zum Ausfüllen von Formularen
Algorithmus zum Kaffeekochen
- Fülle Wasser in Kanne füllen
- Kanne in Kaffeeautomaten setzen
- Filter in Kaffeeautomaten legen
- Kaffeepulver in Filter füllen
- Kaffeemaschine anschalten
- Tasse aus Schrank holen
- Wenn Kaffee durchgelaufen ist, in Tasse gießen
Algorithmus zum Computer-Hochfahren
- Startknopf des Computers drücken
- Bildschirm einschalten
- Computer hochfahren lassen
- Ein Konto aussuchen
- Passwort eingeben (sich anmelden)
Algorithmus zum Schreiben und Absenden eines Briefes
- Text auf Blatt schreiben
- Blatt in Umschlag stecken
- Umschlag zukleben
- Wenn Adresse des Empfängers bekannt, dann schreibe Adresse auf Umschlag, sonst suche Adresse im Adressbuch und schreibe Adresse auf den Umschlag
- Eine Poststation aufsuchen
- Wenn Briefgewicht < 20 Gramm, dann kaufe 55-Cent-Briefmarke, sonst kaufe 90-Cent-Briefmarke
- Briefmarke aufkleben
- Brief absenden
Algorithmus zum Zähneputzen
Beim Zähneputzen kann das Problem auftreten, dass die Zahnpastatube leer ist und man diese wechseln muss. Bei voller Tube nimmt man sie weiterhin, jedoch beim Leeren der Pasta muss man entweder eine neue aus dem Schrank nehmen oder, falls keine da ist, in den Laden gehen und eine kaufen.
Algorithmus zum Bestimmen von Mineralien
Problemstellung: Man besitzt zwei Mineralien (Smaragd und Rubin), die zu bestimmen sind.
Algorithmus zum Fensteröffnen
- wenn man sitzt, dann aufstehen
- zum Fenster gehen
- zum Ankippen den Hebel nach oben drehen
- zum Öffnen den Hebel in die Waagerechte bringen
Auto fahren
Algorithmus zum Motor starten und Losfahren eines Autos mit Automatikgetriebe
- Zündung betätigen
- Licht einschalten
- Handbremse oder Parkbremse lösen
- Gang auf „Drive“ oder „Fahren“ schalten
- Gaspedal betätigen
„Mc Drive“
- An Ausgabeluke heranfahren
- Bestellung abgeben
- Bezahlen
- Bestellung entgegennehmen
- Wegfahren
Spezielle Algorithmen und Algorithmusklassen
Genetische Algorithmen
Die Grundidee genetischer Algorithmen ist, ähnlich der biologischen Evolution] eine Anzahl Lösungskandidaten (Individuen) zufällig zu erzeugen und diejenigen auszuwählen, die einem bestimmten Gütekriterium am besten entsprechen. Deren Eigenschaften (Parameterwerte) werden dann leicht verändert und miteinander kombiniert, um neue Lösungskandidaten (eine neue Generation) zu erzeugen. Algorithmus Genetischer Algorithmus, Wikipedia – Die freie Enzyklopädie, 21.05.06 - Der Text ist unter der Lizenz „Creative Commons Attribution/Share Alike“ verfügbar; zusätzliche Bedingungen können anwendbar sein. Siehe die Nutzungsbedingungen für Einzelheiten. In der Wikipedia ist eine Liste der Autoren verfügbar. |
- Beispiele in Java mit Links und Literaturhinweisen
- Einführung für den Unterricht mit Beipielen in Java.
Algorithmus der Woche beim Informatikjahr
Binäre Suche Sortieren durch Einfügen Schnelle Sortieralgorithmen Zahlen richtig aussprechen Labyrinth und Tiefensuche Roboter im Labyrinth Kürzeste Wege Topologisches Sortieren Eulerkreise Page-Rank-Algorithmus Broadcasting (Gerüchte verbreiten) Paralleles Sortieren Fehlererkennende Codes
Unterrichtsidee
- Lassen Sie einen Algorithmus entwickeln und durchspielen. Sind die Kriterien für einen Algorithmus erfüllt?
- Lassen Sie einen Algorithmus von einem Schüler für einen anderen Schüler schreiben. Ggf. kann man die Zielbeschreibung zunächst verheimlichen und dann diskutieren, ob der Algorithmus das getan hat, was er sollte.
Der Einstieg in eine Unterrichtseinheit zu Algorithmen kann auch über einen Lehrtext geschehen. Hier ein Beispiel zu einem Lehrtext, der auch Aufgaben zu unterschiedlichen Kompetenzstufen enthält: Lehrtext zu Algorithmen