• Keine Ergebnisse gefunden

Basismodul Grundlagen der Informatik II

N/A
N/A
Protected

Academic year: 2022

Aktie " Basismodul Grundlagen der Informatik II "

Copied!
4
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Modultitel

Basismodul Grundlagen der Informatik II

Pflichtmodul

Arbeitsaufwand Leistungs- punkte

Studiensemester (empfohlen)

Häufigkeit des Angebots

Dauer (empfohlen) Kontakt

zeiten 60 h

Selbst- studium

120 h 6 1. Semester jedes Sommer-

semester 1 Semester Summe 180 h

Arbeitsaufwand/

Leistungspunkte

Lehrveranstaltungen Kontaktzeiten Selbststudium Vorlesung Grundlagen der

Programmierung II 30 h 60 h

Übung zu Grundlagen der

Programmierung II 30 h 60 h

--- --- ---

(2)

Qualifikations- ziele /

Kompetenzen

1.) Fachkompetenzen:

Die Studierenden

- kennen die Merkmale der drei Programmierstile und können den Zweck unterschiedlicher Programmierstile erklären.

- können angeben, wie Datentypen und Datenstrukturen im Von-Neumann-Rechnermodell implementiert werden.

- können die Zeit- und Platzkomplexität eines Algorithmus/Programms definieren, die verschiedenen Abstraktionsschritte hin zum O-Kalkül erläutern und mit dem O-Kalkül rechnen.

- können effiziente Algorithmen zum Multiplizieren und Matrixmultiplizieren beschreiben, ihre Laufzeit abschätzen und mit den geläufigen Schulalgorithmen vergleichen.

- kennen verschiedene Entwurfsparadigmen, nennen Beispiele für Algorithmen, die die Entwurfsparadigmen verwenden, und skizzieren die Laufzeiten von Algorithmen, die die Entwurfsparadigmen verwenden.

- beschreiben die Arbeitsweise und Effizienz von Standard-Algorithmen auf Folgen, Bäumen, Graphen und Punktmengen, u.a. zum Suchen und Sortieren auf Folgen, zum Durchlaufen, zum Suchen, Einfügen, Löschen auf allgemeinen und ausgeglichenen Suchbäumen, Suchen kürzester Wege und minimaler Spannbäume auf Graphen, Suchen kürzester Abstände und Bilden konvexer Hüllen auf Punktmengen.

- können Effizienzmaße auf Parallelrechnersystemen erläutern und zwei effiziente parallele Algorithmen beschreiben.

2.) Methodenkompetenzen Die Studierenden

- können die Qualität von Algorithmen anhand ihrer Effizienz beurteilen und verschiedene Algorithmen miteinander vergleichen.

- können für typische Probleme abhängig von gegebenen Rahmenbedingungen geeignete effiziente Algorithmen vorschlagen und ihren Vorschlag begründen.

- sind in der Lage, vorgestellte Algorithmen mit einer Programmiersprache ihrer Wahl zu implementieren.

- erwerben ein Gefühl für die Komplexität eines Problems und die Zugänglichkeit für eine akzeptable praktische Lösung.

3.) Handlungskompetenzen (gesellschaftsrelevante und strategische Kompetenzen) Die Studierenden

- können bearbeitete Aufgaben präsentieren und gegen kritische Einwände verteidigen.

- trauen sich, auch erfolglose Lösungsansätze zu präsentieren, und sind in der Lage, präzise zu beschreiben, an welcher Stelle welche scheinbar unüberwindbaren Hindernisse bestehen.

- bedienen sich zur Lösung von Problemen ausgewählter Literatur in verständiger Weise.

- können zu Themen der Vorlesung präzise Fragen stellen.

(3)

Inhalte

Programmierstile

o Klassifikation von Programmiersprachen (imperativ/funktional/prädikativ)

Abstrakte Datentypen

Implementierung von Datentypen

Qualität von Programmen

o Korrektheit und Komplexität

Algorithmen auf Zahlen

o Multiplizieren, Matrizen multiplizieren

Entwurfsparadigmen für Algorithmen o Divide-and-Conquer

o Backtracking o Greedy-Methode

Algorithmen auf Folgen

o Durchlaufen, Einfügen, Entfernen, Verknüpfen, Spiegeln, Suchen von Elementen und Teilfolgen, Sortieren

Algorithmen auf Bäumen

o Durchlaufen, Einfügen, Entfernen, Suchen von Elementen, Vergleichen, Optimieren

Algorithmen auf Graphen

o Durchlaufen, Suchen von best. Teilstrukturen (Wege, Spannbäume)

Algorithmen auf Punktmengen

o Suchen, Ermitteln ausgewählter Informationen (Distanzen, Clusterbildung)

Parallele Algorithmen o u.a. Sortieren

Schlüssel- kompetenzen

Techniken zur Literaturrecherche, Selbständige Erschließung wissenschaftlicher Literatur, Wissenschaftliche Denk- und Arbeitsweise, Anwendung mathematischer Methoden, Umgang mit Programmiersprachen, Präsentation wissenschaftlicher Sachverhalte

im Umfang von 30 h Teilnahme-

voraussetzungen

keine

Prüfungs-

leistungen Klausur (120-180 min) Leistungspunkte

und Notenvergabe Klausurnote (100%) Verwendung des

Moduls (in anderen Studiengängen)

(4)

Modul-

beauftragte/r Lehrstuhl für Didaktik der Informatik Bemerkungen keine

Termin

Modulprüfung in der Regel Anfang September 2. Termin

Modulprüfung in der Regel Ende September Termin Praktikum

/ Exkursion ---

Referenzen

ÄHNLICHE DOKUMENTE

Tabellieren Sie die Werte, die m , n, q und r von Schleifendurchlauf zu Schlei- fendurchlauf annehmen, wenn der ggT von 15333 und 1235 mit Hilfe des euklidischen Algorithmus

” Spezifizieren“ Sie in Form eines Klassendiagramms (vgl. Sparbuch- Spezifikation der Vorlesung) einen Datentyp Bestellung.

Durch Modifikation einer Eigenschaft oder Hinzuf¨ ugen einer neuen Eigen- schaft kann die implizite Spezifikation so ge¨ andert werden, dass nur noch die Funktion CHS diese erf¨

Schreiben Sie ein Programm, das mit Hilfe des in C++ vordefinierten Datentyps string Zeichenketten vom Benutzer anfordert und sodann nach einem Kontrollausdruck der

Schreiben Sie (in C++) eine erste Version des Datentyps Bestellung (Aufgabe 4 / ¨ Ubungsblatt 3) mit Attributen Kundenname, Kundennummer, Lieferadresse, Rechnungsadresse, (zun¨

• können Lösungen für komplexe Aufgabenstellung unter Verwendung einer Programmierumgebung implementieren und dokumentieren.. Planung

Bedeutung: Die Funktion beschrieben durch den λ-Term (λx.M) wird angewendet auf den Argumentterm N, und der Gesamtterm kann ersetzt werden durch M[x←N], also durch den Term, den

Die Kaufkraft eines Geldbetrages nach Ablauf eines Jahres erhält man, indem man den Geldbetrag um die Preissteigerungsrate vermindert. • wohldefinierter Zweck: Problem,