Übungen: Die Listenfunktion map und anonyme Funktionen
Aufgabe 1: Namen in Vorlage einfügen
Eine Schüler:innengruppe plant, eine Racket-AG anzubieten. Nach der Anmeldephase erhalten sie folgende Anmeldeliste:
(define anmeldeliste
(list "Lena" "Amir" "Sophie" "Lukas" "Aisha" "Jonas" "Thabo" "David" "Yara" "Elias" "Clara" "Noah" "Zanele" "Samuel" "Mia" "Fatima" "Leon" "Anna" "Maria" "Emma" "Paul" "Chen" "Tim" "Sara" "Julian" "Zoe" "Ben" "Laila" "Max")
)
(a) Schreibe ein Racket-Programm, welches eine Liste produziert, die für
jeden Namen in der Liste "Hallo <Name>, willkommen in der Racket-AG!" enthält.
Aufgabe 2: mRNA zu Aminosäuren
In der Proteinbiosynthese werden im Körper neue Proteine hergestellt, indem verschiedene Aminosäuren zu einer Kette verknüpft werden. Welche Aminosäuren zu nutzen sind, ist in Form von Codons in der mRNA kodiert. Ein Codon besteht aus einer Kombination der vier Basen Adenin (A), Cytosin (C), Guanin (G) und Uracil (U). Insgesamt werden so mit 64 Codons 20 verschiedene Aminosäuren kodiert.
Die Basenabfolge einer mRNA lässt sich im Labor sehr schnell sequenzieren. Somit können wir anhand dieser Informationen auf den Aufbau der kodierten Proteine schließen. In dieser Aufgabe wollen wir uns exemplarisch mit 8 der 64 Codons genügen:
Codon | Aminosäure |
---|---|
AGU | Serin |
AUG | Methionin |
CAG | Glutamin |
CGA | Arginin |
CUG | Leucin |
GCC | Alanin |
UGG | Tryptophan |
UUU | Phenylalanin |
(a) Schreibe ein Programm, das anhand der ersten fünf Codons von Insulin und Keratin jeweils eine Liste mit den entsprechenden ersten fünf Aminosäuren produziert:
(define insulin-start (list "AUG" "GCC" "CUG" "UGG" "AUG"))
(define keratin-start (list "AUG" "AGU" "CGA" "CAG" "UUU"))
Aufgabe 3: Produkt-Records mit und ohne MwSt.
Kauft man in Deutschland ein Produkt, so wird auf dessen Nettopreis eine Mehrwertsteuer erhoben. Der Regelsteuersatz beträgt 19 %. Für einige Produkte, wie grundlegende Lebensmittel oder Kulturangebote wird nur ein ermäßigter Steuersatz von 7 % erhoben. In der Tabelle siehst du einige Produkte, deren Nettopreis und die erhobene Mehrwertsteuer.
Produkt | Nettopreis in Euro | Mehrwertssteuer in Prozent |
---|---|---|
KG Äpfel | 2.50 | 7 |
Liter Apfelsaft | 0.84 | 19 |
Eintrittskarte Museum | 10 | 7 |
Mountainbike | 800 | 19 |
PS5 | 420 | 19 |
(a) Schreibe eine Record-Definition, mit welchem du die Produkte und die dazugehörigen Informationen aus der Tabelle abbilden kannst. Füge deiner Record-Definition ein zusätzliches Feld für den Bruttopreis hinzu.
(b) Definiere eine Liste, in welcher alle Produkte der Tabelle als Records abgebildet sind. Gebe für den Bruttopreis zunächst überall 0 an.
(c) Schreibe eine Funktion und einen geeigneten map
-Ausdruck, um eine
Liste analog zu Aufgabenteil (b) zu erzeugen, die den
Bruttopreis der Produkte ergänzt.