Wirtschaft & Informatik I

WWF Assessment UZH HS22

WWF Assessment UZH HS22


S. DP.
Diese Lernkarten decken grundlegende Konzepte der Informatik und Wirtschaftsinformatik auf Universitätsniveau ab. Sie behandeln Programmierparadigmen, die Definition von Programmiersprachen, Algorithmen und deren Eigenschaften, sowie Computational Thinking mit Dekomposition, Mustererkennung und Abstraktion. Die Karteikarten sind ideal für Studierende, die ein tieferes Verständnis für die Struktur und Logik von Programmen und Algorithmen erlangen möchten, um komplexe Probleme effizient zu lösen.
Flashcards
12
Students
4
Language
German
Category
Micro-Economics
Level
University
Created / Updated
24.01.2023 / 27.12.2023

Flashcards

Hauptbestandteile Computational Thinking

1. Dekomposition

2. Mustererkennung

3. Abstraktion

4. Algorithmus

Dekomposition

Zerlegung in Teilprobleme durch:

- Zielreduktion (Zerlegen in kleinere gleich grosse Teile)

- rekursive Zielreduktion (wiederholen der Zielreduktion 1 - 2 -4- Teile etc...)

Mustererkennung

Gemeinsamkeiten & Ähnlichkeiten zwischen (Teil-)problemen
-> ermöglicht Wiederverwenden der gleichen Lösung

Abstraktion

wichtige Aspekte erkennen:

- Datenabstraktion (irrelevante Einzelheiten verbergen)

- Abstraktion der Steuerung (Anweisungen komprimieren)

Algorithmus

Reihe von Anweisungen oder Beschreibung mehrerer Anweisungen

Definition Algorithmen

Ein Algorithmus ist eine endliche Folge wohldefinierter Anweisungen typischerweise zur Lösung einer Klasse von Problemen.

3 Kriterien, dass ein Algorithmus von einem Computer ausgeführt werden kann

1. Maschinentauglichkeit: Anweisungen können von Maschine gelesen & ausgeführt werden.

2. Allgemeinheit: auf alle Problemfälle des zu lösenden Problems anwendbar

3. Korrektheit: für alle Fälle des Problems in endlicher Zeit eine Lösung findbar

7 Fertigkeiten für gutes CT

1. Modellierung: Wie wird die reale Welt am besten modelliert?

2. wissenschaftliches Denken: strukturiertes systemaatisches Vorgehen, Recherche, Prüfen der Ergebnisse

3. Logisches Denken: alle Eventualitäten, Ausnahmefälle, Details berücksichtigen

4. Kreativität: Innovation & Kreativität für Läsen von bekannten Problemen

5. Menschenkenntnisse: Stärken & Schwächen von Menschen kennen & diese berücksichtigen

6. Heuristik: praktikable Lösung in angemessener Zeit

7. Evaluation: bringt Algorithmus das gewünschte Resultat?

Programmiersprachen

- Maschinensprache: jede Anweisung wird direkt vom Computer ausgeführt

- Assemblersprache: Zahlenfolgen durch Abkürzungen ersetzt

- höhere Programmiersprachen: näher an menschlicher Sprache

Assembler, Compiler, Interpreter

Assembler: transformiert Programm in Assemblersprache in Maschinensprache

Compiler: übersetzt gesamten Quellcode vor Ausführung des Programms

Interpreter: übersetzt Quellcode während der Ausführung

Was muss bei der Definition einer Programmiersprache definiert werden?

- Lexikalik: definiert gültige Zeichen/Wörter

- Syntax: definiert korrekten Aufbau der Sätze aus gültigen Zeichen

- Semantik: definiert Bedeutung syntaktisch korrekter Sätze

Programmierparadigmen 

(beschreibt den grundlegenden Stil eines Programms; welche Denkmuster, Heransgehensweise)

- deklarativ: Fokus auf Beschreibung d. Ergebnisses anstatt d. Arbeitsschritte

- funktional: alle Elemente können als Funktion aufgefasst werden & Code

- imparativ: Programmcode ist eine Abfolge von Anweisungen

- objektorientiert: erlaubt es, reale Welt als Objekte zu präsentieren die miteinander interagieren können

Study