Markus Dahinden: Katalogdaten im Frühjahrssemester 2024 |
| Name | Herr 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 |
| markus.dahinden@inf.ethz.ch | |
| Departement | Informatik |
| Beziehung | Dozent |
| Nummer | Titel | ECTS | Umfang | Dozierende | ||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 252-0840-02L | Anwendungsnahes Programmieren mit Python | 2 KP | 2G | L. E. Fässler, M. Dahinden | ||||||||||||||||||||||||||||||||||||||||||||
| Kurzbeschreibung | Diese Lehrveranstaltung vermittelt wichtige Basiskonzepte zur Bearbeitung interdisziplinärer Programmierprojekte mit Python. | |||||||||||||||||||||||||||||||||||||||||||||||
| Lernziel | Die 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. | |||||||||||||||||||||||||||||||||||||||||||||||
| Inhalt | In 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. | |||||||||||||||||||||||||||||||||||||||||||||||
| Literatur | L. Fässler, M. Dahinden, D. Komm, and D. Sichau: Einführung in die Programmierung mit Python. Begleitunterlagen zum Onlinekurs und zur Vorlesung, 2023. ISBN: 978-3-7578-2423-5. | |||||||||||||||||||||||||||||||||||||||||||||||
| Voraussetzungen / Besonderes | Fü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. | |||||||||||||||||||||||||||||||||||||||||||||||
| Kompetenzen |
| |||||||||||||||||||||||||||||||||||||||||||||||
| 252-0842-00L | Programmieren und Problemlösen Belegungsfrist: 16.02.2024 | 3 KP | 2V + 1U | D. Komm, M. Dahinden, M. Wettstein | ||||||||||||||||||||||||||||||||||||||||||||
| Kurzbeschreibung | Informatikkonzepte und deren Umsetzung in Python. | |||||||||||||||||||||||||||||||||||||||||||||||
| Lernziel | Die 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 | |||||||||||||||||||||||||||||||||||||||||||||||
| Skript | Moodle: https://moodle-app2.let.ethz.ch/course/view.php?id=21917 Vorlesungswebseite: https://courses.csedu.inf.ethz.ch/ppl-2024/ | |||||||||||||||||||||||||||||||||||||||||||||||
| Literatur | Die ausführlichen Folien werden auf der Vorlesungshomepage zum Herunterladen bereitgestellt. | |||||||||||||||||||||||||||||||||||||||||||||||
| Voraussetzungen / Besonderes | Empfehlung: - Grundlagen der Informatik (252-0852-00) oder - Anwendungsnahes Programmieren mit Python (252-0840-02) | |||||||||||||||||||||||||||||||||||||||||||||||
| Kompetenzen |
| |||||||||||||||||||||||||||||||||||||||||||||||
| 273-0001-00L | Programming with Python | 3 KP | 2A | L. E. Fässler, M. Dahinden | ||||||||||||||||||||||||||||||||||||||||||||
| Kurzbeschreibung | This Python course reinforces and extends basic programming concepts covered previously in the CAS in Applied Information Technology and introduces several new topics. These include classes, objects, and a selection of important Python libraries. Participants will develop their Python programming skills over the entire module with online tutorials, programming exercises, and one-on-one support. | |||||||||||||||||||||||||||||||||||||||||||||||
| Lernziel | Participants learn... - how to encode a problem into a program, test the program, and correct errors. - to understand and improve existing code. - deal with the complexity of real data. - store data in a suitable data structure. - query databases and understand and evaluate the corresponding database model. - to implement mathematical models as a simulation. | |||||||||||||||||||||||||||||||||||||||||||||||
| Inhalt | Participants expand their programming skills. They learn to develop mathematical models for real-world tasks and solve them as small projects in Python. Fundamental concepts of programming being covered include Matrix calculations, Objects and Classes, Data requests for Data Science and Data visualization. | |||||||||||||||||||||||||||||||||||||||||||||||
| Voraussetzungen / Besonderes | It is based on application-oriented learning. The students spend most of their time working through programming projects and discussing their results with teaching assistants. To learn the programming basics there are electronic tutorials available. A Python basics online course is available approximately one month prior to the start of the program for people who do not have any prior experience with Python or who would like to refresh their Python skills. | |||||||||||||||||||||||||||||||||||||||||||||||
| Kompetenzen |
| |||||||||||||||||||||||||||||||||||||||||||||||

