Markus Dahinden: Katalogdaten im Frühjahrssemester 2023

NameHerr Dr. Markus Dahinden
Adresse
Lehre D-INFK
ETH Zürich, CAB H 31.1
Universitätstrasse 6
8092 Zürich
SWITZERLAND
Telefon+41 44 632 53 52
E-Mailmarkus.dahinden@inf.ethz.ch
DepartementInformatik
BeziehungDozent

NummerTitelECTSUmfangDozierende
252-0840-02LAnwendungsnahes Programmieren mit Python Information 2 KP2GL. E. Fässler, M. Dahinden
KurzbeschreibungDiese Lehrveranstaltung vermittelt wichtige Basiskonzepte zur Bearbeitung interdisziplinärer Programmierprojekte mit Python.
LernzielDie Studierenden können...

- selbstständig Aufgabenstellungen als Programm codieren, Programme testen und Fehler beheben.
- bestehenden Programmcode verstehen, hinterfragen und verbessern.
- mit der Komplexität realer Daten umgehen.
- Daten in einer geeigneten Datenstruktur speichern.
- Modelle aus den Naturwissenschaften als Simulation umzusetzen.
- Zufallsexperimente durchführen und die Resultate interpretieren.
- Standard-Algorithmen erklären und anwenden.
InhaltIn der Vorlesung werden folgende Basis-Konzepte behandelt:

1. Variablen und Datentypen
2. Kontrollstrukturen und Logik
3. Sequentielle Datentypen, Such- und Sortieralgorithmen, Sequenzanalyse
4. Funktionen, Module, Simulationen und Animationen
5. Matrizen, Zufallsexperimente, Zelluläre Automaten.
6. Klassen und Objekte

Im praktischen Teil der Lehrveranstaltung werden selbstständig kleine Programmierprojekte mit naturwissenschaftlichem Kontext bearbeitet. Als Vorbereitung werden elektronische Tutorials bereitgestellt.
LiteraturL. Fässler, M. Dahinden, D. Komm, and D. Sichau: Einführung in die Programmierung mit Python. Begleitunterlagen zum Onlinekurs und zur Vorlesung, 2022. ISBN: 978-3-7562-1004-6.
Voraussetzungen / BesonderesFür diese Lehrveranstaltung werden keine Vorkenntnisse vorausgesetzt. Sie basiert auf anwendungsorientiertem Lernen. Den grössten Teil der Arbeit verbringen die Studierenden damit, Programmierprojekte mit naturwissenschaftlichen Daten zu bearbeiten und die Resultate mit Assistierenden zu diskutieren. Für die Aneignung der Programmier-Grundlagen stehen elektronische Tutorials zur Verfügung.
KompetenzenKompetenzen
Fachspezifische KompetenzenVerfahren und Technologiengeprüft
Methodenspezifische KompetenzenAnalytische Kompetenzengeprüft
Entscheidungsfindunggefördert
Medien und digitale Technologiengefördert
Problemlösunggeprüft
Projektmanagementgefördert
Soziale KompetenzenKommunikationgeprüft
Persönliche KompetenzenAnpassung und Flexibilitätgefördert
Kreatives Denkengefördert
Kritisches Denkengefördert
Selbstbewusstsein und Selbstreflexion gefördert
Selbststeuerung und Selbstmanagement gefördert
252-0842-00LProgrammieren und Problemlösen3 KP2V + 1UD. Komm, M. Dahinden, M. Fischer
KurzbeschreibungInformatikkonzepte und deren Umsetzung in Python.
LernzielDie Ziele der Lehrveranstaltung sind einerseits das Programmieren in Python zu vertiefen und andererseits Informatikkonzepte kennenzulernen, die im Algorithmendesign Anwendung finden. Hierbei liegt der Fokus auf dem algorithmischen Denken, also der Fähigkeit, Probleme systematisch mit Hilfe von entwickelten Algorithmen zu lösen. Es werden verschiedene Strategien für das Problemlösen vorgestellt, theoretisch analysiert und praktisch in Python umgesetzt. Die Verknüpfung von Theorie und Praxis ist in dieser Lehrveranstaltung zentral.
Inhalt- Repetition von grundlegenden Programmierkonzepten wie Variablen, Listen, Kontrollstrukturen und Schleifen
- Einlesen und darstellen von Daten
- Komplexitätstheorie
- Sortieren und Suchen
- Dynamische Programmierung
- Rekursion
- Graph-Algorithmen
SkriptVorlesungswebseite: https://moodle-app2.let.ethz.ch/course/view.php?id=19344
LiteraturDie ausführlichen Folien werden auf der Vorlesungshomepage zum Herunterladen bereitgestellt.
Voraussetzungen / BesonderesEmpfehlung:
- Grundlagen der Informatik (252-0852-00)
- Anwendungsnahes Programmieren mit Python (252-0840-01)
KompetenzenKompetenzen
Fachspezifische KompetenzenKonzepte und Theoriengeprüft
Verfahren und Technologiengeprüft
Methodenspezifische KompetenzenAnalytische Kompetenzengeprüft
Problemlösunggeprüft
Soziale KompetenzenKommunikationgefördert
Kooperation und Teamarbeitgefördert
Selbstdarstellung und soziale Einflussnahmegefördert
Persönliche KompetenzenKreatives Denkengeprüft
Kritisches Denkengeprüft
Selbstbewusstsein und Selbstreflexion gefördert
Selbststeuerung und Selbstmanagement gefördert