Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
| Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
| gf_informatik:computerarchitektur_sca:zusatzaufgaben [2023-09-02 11:27] – sca | gf_informatik:computerarchitektur_sca:zusatzaufgaben [2025-10-20 11:52] (aktuell) – [Zahlenanalyse] sca | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| ====== Zusatzaufgaben LMC ====== | ====== Zusatzaufgaben LMC ====== | ||
| - | Empfohlene Vorgehensweise für alle Aufgaben: | + | Empfohlene |
| - | 1) Programmiere das Programm zuerst mit Python. Verwende dabei nur diejenigen Elemente, die in ähnlicher Form auch im Befehlssatz des LMC vorkommen, also: | + | 1) Programmiere das Programm zuerst mit **Python**. Verwende dabei nur diejenigen Elemente, die in ähnlicher Form auch im Befehlssatz des LMC vorkommen, also: |
| + | * Variablen mit ganzen Zahlen (z.B. $x = 42$) aber keine Listen | ||
| * Mathematische Operationen: | * Mathematische Operationen: | ||
| * while-Schleife, | * while-Schleife, | ||
| - | 2) Mache einen Plan: Wie kannst du das Programm mit dem LMC schreiben? | + | 2) Mache einen **Plan**: Wie kannst du das Programm mit dem LMC schreiben? Zum Beispiel: Welche Art von Schleife macht hier Sinn? |
| - | 3) Implementiere es mit dem LMC. | + | 3) Implementiere es mit dem **LMC**. |
| + | ==== Zahlenanalyse ==== | ||
| + | **Version 1: Positiv oder Negativ? | ||
| + | |||
| + | * Benutzerin soll Zahl eingeben. | ||
| + | * LMC gibt aus: -1 falls Zahl negativ, +1 falls Null oder positiv | ||
| + | * Kleine Erweiterung: | ||
| + | |||
| + | **Version 2: Volljährig? | ||
| + | |||
| + | * Benutzerin soll Alter eingeben. | ||
| + | * LMC gibt aus: " | ||
| + | |||
| + | **Version 3: Schnaps-Bier-Sirup: | ||
| + | |||
| + | * Benutzerin soll Alter eingeben. | ||
| + | * LMC gibt aus, was Person trinken darf: | ||
| + | * " | ||
| + | * " | ||
| + | * " | ||
| + | |||
| + | <nodisp 2> | ||
| + | |||
| + | ++++Lösung| | ||
| + | VERSION 1a | ||
| + | |||
| + | < | ||
| + | INP | ||
| + | STO NR | ||
| + | BRP JMP | ||
| + | LDA NEG | ||
| + | OUT | ||
| + | HLT | ||
| + | JMP LDA POS | ||
| + | OUT | ||
| + | HLT | ||
| + | NR DAT 0 | ||
| + | NEG DAT -1 | ||
| + | POS DAT 1 | ||
| + | </ | ||
| + | |||
| + | VERSION 1b | ||
| + | < | ||
| + | INP | ||
| + | STO NR | ||
| + | BRP JMP | ||
| + | LDA NEG | ||
| + | OTC | ||
| + | HLT | ||
| + | JMP LDA POS | ||
| + | OTC | ||
| + | HLT | ||
| + | NR DAT 0 | ||
| + | NEG DAT 78 | ||
| + | POS DAT 80 | ||
| + | </ | ||
| + | |||
| + | VERSION 2 | ||
| + | < | ||
| + | INP | ||
| + | STO AGE | ||
| + | SUB ATN | ||
| + | BRP JMP | ||
| + | LDA M | ||
| + | OTC | ||
| + | HLT | ||
| + | JMP LDA V | ||
| + | OTC | ||
| + | HLT | ||
| + | AGE DAT 0 | ||
| + | ATN DAT 18 | ||
| + | M DAT 77 | ||
| + | V DAT 86 | ||
| + | </ | ||
| + | |||
| + | VERSION 3 | ||
| + | < | ||
| + | INP | ||
| + | SUB SZN | ||
| + | BRP ALK | ||
| + | LDA H | ||
| + | OTC | ||
| + | HLT | ||
| + | ALK SUB TWO | ||
| + | BRP SCHN | ||
| + | LDA B | ||
| + | OTC | ||
| + | HLT | ||
| + | SCHN LDA S | ||
| + | OTC | ||
| + | HLT | ||
| + | SZN DAT 16 | ||
| + | TWO DAT 2 | ||
| + | H DAT 72 | ||
| + | B DAT 66 | ||
| + | S DAT 83 | ||
| + | </ | ||
| + | ++++ | ||
| + | |||
| + | </ | ||
| ==== Multiplikation ==== | ==== Multiplikation ==== | ||
| Zeile 35: | Zeile 135: | ||
| ==== Fibonacci-Folge ==== | ==== Fibonacci-Folge ==== | ||
| - | **Ziel:** Der Benutzer soll eine Zahl $n$ als Input eingeben. Der Code gibt dann die ersten $n$ Zahlen der Fibonacci-Folge aus: $1, | + | **Ziel:** Der Benutzer soll eine Zahl $n$ als Input eingeben. Der Code gibt dann die ersten $n$ Zahlen der Fibonacci-Folge aus: $1, |
| + | |||
| ==== Ganzzahldivision ==== | ==== Ganzzahldivision ==== | ||
| Zeile 133: | Zeile 235: | ||
| ++++ | ++++ | ||
| - | </nodisp> | + | ++++Schnapps-Aufgabe| |
| + | <code> | ||
| + | // BenutzerIn gibt Alter ein | ||
| + | // LMC gibt aus: | ||
| + | // H für Himbeersirup | ||
| + | // B für Bier | ||
| + | // S/W für Schnapps/ Whisky | ||
| + | INP // Alter eingeben | ||
| + | SUB SIXTN | ||
| + | BRP ALK // Alter >= 16 -> springe zu Bier oder Schnapps | ||
| + | LDA H // Himbeersirup | ||
| + | OTC | ||
| + | HLT | ||
| + | ALK SUB TWO // Entscheide ob Bier oder Schnapps | ||
| + | BRP SCHN // springe zu Schnapps | ||
| + | LDA B // Bier | ||
| + | OTC | ||
| + | HLT | ||
| + | SCHN LDA S // Schnapps | ||
| + | OTC | ||
| + | HLT | ||
| + | B DAT 66 | ||
| + | H DAT 72 | ||
| + | S DAT 85 | ||
| + | SIXTN DAT 16 | ||
| + | TWO DAT 2 | ||
| + | </code> | ||
| + | </ | ||
| + | ++++ | ||