Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
|
info:sek1:algorithmierung:uebung:4 [2020/04/17 11:37] schultz angelegt |
info:sek1:algorithmierung:uebung:4 [2020/05/04 13:47] (aktuell) schultz |
||
|---|---|---|---|
| Zeile 22: | Zeile 22: | ||
| - **Benenne** die Grundstrukturen von Algorithmen, die in der Bauanleitung auftreten. | - **Benenne** die Grundstrukturen von Algorithmen, die in der Bauanleitung auftreten. | ||
| - **Begründe**, weshalb es sich dennoch nicht um einen Algorithmus handelt. | - **Begründe**, weshalb es sich dennoch nicht um einen Algorithmus handelt. | ||
| - | - **Gib** zwei Vorschläge zur Verbesserung **an**.</callout> | + | - **Gib** zwei Vorschläge zur Verbesserung **an**. |
| + | </callout> | ||
| <WRAP center round box 80%>**Bauanleitung für einen Tisch:**\\ | <WRAP center round box 80%>**Bauanleitung für einen Tisch:**\\ | ||
| - | Packe die einzelnen Teile aus.\\ | + | <code>Packe die einzelnen Teile aus. |
| - | Beine mit Zehnerspanten kürzen und verleimen.\\ | + | Beine mit Zehnerspanten kürzen und verleimen. |
| - | Tischplatte festschrauben und sich freuen, wenn es halbwegs klappt.\\ | + | Tischplatte festschrauben und sich freuen, wenn es halbwegs klappt. |
| - | Wiederhole\\ | + | Wiederhole |
| - | Befestige Bein\\ | + | Befestige Bein |
| - | Am besten jemanden probesitzen lassen, falls Schwierigkeiten auftreten. | + | Am besten jemanden probesitzen lassen, falls Schwierigkeiten auftreten.</code> |
| </WRAP> | </WRAP> | ||
| \\ | \\ | ||
| - | <button type="warning" collapse="strukturiert1">verbal strukturiert (Hilfestellung)</button> | + | <button type="warning" collapse="h1">Hilfestellung zu 1.</button> |
| - | <collapse id="strukturiert1" collapsed="true"> | + | <collapse id="h1" collapsed="true"> |
| - | - Basis a festlegen | + | Es gibt drei algorithmische Grundstrukturen: |
| - | - Exponent n festlegen | + | * Sequenz (Folge von Anweisungen) |
| - | - ... | + | * Verzweigung (Fallunterscheidung, "Überprüfungen") |
| + | * Schleife (Wiederholung von Anweisungen) | ||
| + | \\ | ||
| </collapse> | </collapse> | ||
| - | <button type="success" collapse="strukturiert1L">später: verbal strukturiert (Lösung)</button> | + | <button type="warning" collapse="h2">Hilfestellung zu 2.</button> |
| - | <collapse id="strukturiert1L" collapsed="true"><html><!-- | + | <collapse id="h2" collapsed="true"> |
| - | - Basis a festlegen | + | Schaue in der [[info:sek1:algorithmierung:definition|Definition für einen Algorithmus]] nach, welche Eigenschaften erfüllt sein müssen.\\ |
| - | - Exponent n festlegen | + | Gib also in deiner Begründung auch an, welche Eigenschaften nicht erfüllt sind.\\ \\ |
| - | - Ist n = 0 ? | + | </collapse> |
| - | - ja: Potenz p = 1 | + | <button type="warning" collapse="h3">Hilfestellung zu 3.</button> |
| - | - nein: Berechne p, indem du a genau (n-1)-mal mit sich selbst multiplizierst | + | <collapse id="h3" collapsed="true"> |
| - | - Potenz p ausgeben --></html> | + | Bedenke, dass ein Algorithmus so genau wie möglich und eindeutig formuliert sein muss. Ungenaue Formulierungen wie "eventuell" oder "wenn du Lust hast" sind hier nicht hilfreich.\\ \\ |
| + | </collapse> | ||
| + | |||
| + | <button type="success" collapse="l1">Lösung zu 1.</button> | ||
| + | <collapse id="l1" collapsed="true"> | ||
| + | * Sequenz: z.B. die Folge der ersten drei Anweisungen ("Packe ... aus" bis "...festschrauben...") | ||
| + | * Verzweigung: z.B. "Probesitzen lassen" unter der Bedingung, dass vorher ein Fehler aufgetreten ist | ||
| + | * Schleife: wiederholte Ausführung von "Bein befestigen" | ||
| + | \\ | ||
| + | </collapse> | ||
| + | <button type="success" collapse="l2">Lösung zu 2.</button> | ||
| + | <collapse id="l2" collapsed="true"> | ||
| + | Mögliche Begründungen sind: | ||
| + | * die Formulierungen sind nicht an jeder Stelle eindeutig, z.B. "Was ist ein Zehnerspanten?" oder "Was bedeutet halbwegs klappen?" | ||
| + | * nicht endliche Formulierung: Die Schleifen-Anweisung "Wiederhole" wird nicht unterbrochen durch eine Abbruchbedingung oder eine Zählvariable, besser wäre: "Wiederhole 4 mal" | ||
| + | \\ | ||
| </collapse> | </collapse> | ||
| - | <button type="success" collapse="pap1">später: PAP (Lösung)</button> | + | <button type="success" collapse="l3">Lösung zu 3.</button> |
| - | <collapse id="pap1" collapsed="true"> | + | <collapse id="l3" collapsed="true"> |
| - | <html><!--{{ :info:sek1:algorithmierung:uebung:beispiel-pap-potenzberechnung.png?direct&600 |}} --></html> | + | Eine bessere und vor allem genauere Formulierung wäre: |
| + | <code>Packe die in der Anleitung aufgeführten Teile 1-8 aus. | ||
| + | Wiederhole 4 mal: | ||
| + | Passe die Länge des Tischbeines mit einer Holzsäge an und verleime es mit dem Fuß. | ||
| + | Schraube das Bein mit drei Schrauben des Typs M8 x 80 mm an der Tischplatte fest. | ||
| + | Überprüfe, ob der Tisch in Waage steht. Falls nicht, korrigiere durch Herausdrehen der Füße, an den Stellen, wo eine Lücke zum Boden ist.</code> | ||
| + | \\ \\ | ||
| </collapse> | </collapse> | ||