Grundgebiete der Informatik

1. Semester Wirt. Ing. RWTH AACHEN

1. Semester Wirt. Ing. RWTH AACHEN


L. E.
Diese Lernkarten bieten einen umfassenden Überblick über grundlegende Konzepte der Informatik auf Universitätsniveau. Sie decken Themen wie Algorithmen, Graphen, Datenstrukturen und deren Laufzeiten ab, wobei Schwerpunkte auf Suchalgorithmen, Sortierverfahren und dynamischer Programmierung liegen. Besonders nützlich für Studierende der Informatik, die sich auf Prüfungen vorbereiten oder ihr Verständnis von grundlegenden Algorithmen und Datenstrukturen vertiefen möchten.
Karten
121
Lernende
1
Sprache
Deutsch
Kategorie
Informatik
Stufe
Universität
Erstellt / Aktualisiert
23.02.2016 / 25.02.2016

Lernkarten

Definition von Informatik (Computer Science)

Informatik ist die Wissenschaft, die sich mit der Entwicklung und Nutzung von Computersystemen beschäftigt.

Nenne zwei Vorteile von höheren Programmiersprachen gegenüber dem Maschinencode

Definiere Imperative Sprachen

konkrete Beschreibung eines Algorithmus als Folge von Anweisungen (Beispiel C oder PASCAL)

Definiere Deklarative Sprachen

Beschreibung eines erwünschten Programmverhaltens, konkrete Umsetzung erfolgt teilweise durch den Compiler und Laufzeitsystem (LISP oder Prolog)

Definiere Objektorientierte Sprachen 

Zusammenfassung von Algorithmen und Daten zu Objekten, dadurch einfachere Programmwartung (C++ und JAVA)

Nenne die sechs Schritte für den Software Life Cycle 

1. Problem (-> Analyse + Definition)

2. Spezifikation (-> Implementierung)

3. Dokumentiertes Programm (-> Test)

4. Modifiziertes Programm (-> Installation) 

5. Software Produkt (-> Wartung und Kundensupport)

6. Verschrottung

Erkläre Algorithmus

- Abstrakte Handlungsanweisung, um ein Problem zu lösen

- Ausgabe als Funktion der Eingabe 

- endlicher Zeit, eindeutig und deterministisch 

Erkläre Programm

Codierung eines Algorithmus in Programmiersprache 

Erkläre Datenstruktur

- Mathematisches Objekt zur Speicherung von Daten

- angeordnet und zusammengefasst

 

Nenne die drei Kriterien für einen Algorithmus 

Erkläre Bibliotheken (Libraries)

Von vielen Programmen häufig wiederverwendeter Code wird in Bibliotheken abgelegt

- keine selbst ausführbaren Programme / sondern Funktionen die abgerufen werden

Erkläre Schleifen

Code wird so lange wiederholt, bis die Bedingung nicht mehr erfüllt ist

Nenne die zwei Parameter, welche stets der printf Funktion übergeben werden.

1. die Art der Ausgabe der Daten (ganzzahlig, Fließkomma)

2. die auszugebenen Daten

Erkläre C-Präprozessor

Der C-Präprozessor läuft vor dem Compiler über den Quellcode 

- cpp-Anweisung #..

- cpp-Verwendung erhöht die Lesbarkeit

Nenne zwei Arten von fehlerhaften Programmen 

Möglichkeit 1: Programm entspricht nicht dem C Standard (Compiler findet die Fehler)

Möglichkeit 2: Programm ist gültig, führt aber nicht die gewünschte Funktion aus (Debugging)

Definition Datentyp

Ein Datentyp (DT) ist eine Menge von Werten und eine Sammlung von Operationen auf diesen Werten.

Definition abstrakter Datentyp

Ein abstrakter Datentyp (ADT) ist ein Datentyp der nur über eine Schnittstelle zugänglich ist.

Was ist ein Objekt?

Ein Objekt ist ein benannter Speicherbereich

Wie viel Speicherplatz benötigt der Datentyp char?

1 Byte (8bits)

Wie viel Speicherplatz benötigt der Datentyp int?

short int: mind. 16bit

long int: mind. 32bit

Erkläre Variablen 

- speichern Werte eines bestimmten Datentyps

- müssen vor Verwendung deklariert werden

- besitzen einen eindeutigen Namen 

Was sind Identifier?

eindeutige Namen für Variablen, Konstanten, Datentypen und Funktionen

Was sind reguläre Ausdrücke?

Ein regulärer Ausdruck (RA) beschreibt eine Menge von Wörtern. Neben Symbolen des zu Grunde liegenden Alphabets kommen in einem regulären Ausdruck in der Regel auch noch Metasymbole vor. Das sind zusätzliche Symbole, die zur Konstruktion der Wortmenge benutzt werden.

Erkläre typedef

Ein Datentyp wird unter einem neuen Namen bekannt gemacht.

Erkläre Konstanten

Werte die sich innerhalb eines Programmes nie ändern.

- bessere Lesbarkeit des Codes

-Konstanten benötigen keine Deklaration 

Erkläre Konstante Ausdrücke

Definiert man eine symbolische Konstante (#define MAXCOUNT 1000) kann man diese Konstante als konstanten Ausdruck innerhalb des Programms verwenden (MAXCOUNT +1). Diese werden vom Compiler vorab ausgerechnet und zählen nicht zur Programm-Laufzeit.

Unterscheide ROM und RAM

Beim Speicher unterscheidet man ROM (read only) und RAM (random access memory). Letzterer kann beliebig zugegriffen werden. ROM ist aber platzsparender.

Was ist das Ergebnis einer Vergleichsoperation? (== / !=)

 

Ein Boolescher Wert (true or false)

Beurteile type casts 

Die mangelnde Standardisierung der type casts ist sicher eine Schwäche der Sprache C. Daher sollte insbesondere von expliziten type casts sparsamer Gebrauch gemacht werden.

Erkläre Short-Circuit-Auswertung

Versucht man komplexere Bedingungen durch logische Verknüpfungen zu verbinden, werden diese ausgewertet um nur so viel wie für das Gesamtresultat notwendig ist zu verwenden.

Erkläre Labels und gotos

Ein Label ist eine symbolische Sprungmarke im Code. 

Allgemein sind Labels und gotos Statements welche eine Verzweigung ermöglichen. 

 

Beurteile Labels und gotos

- beeinträchtigen die Lesbarkeit 

- sind ein "historisches Relikt" 

- sind unnötig und sollten nur bei zwingenden Gründen eingesetzt werden

Erkläre switch Verzweigung 

Fallunterscheidung über eine bestimmte Variable mit jeweils konstantem Vergleichswert.

Beurteile die Switch Verzweigung 

- kompakter und damit auch besser lesbar

- kann vom Compiler in einen effizienteren Assemblercode übersetzt werden

Beurteile die Switch Verzweigung 

- kompakter und damit auch besser lesbar

- kann vom Compiler in einen effizienteren Assemblercode übersetzt werden

Erkläre Schleifen und unterscheide drei Arten

Schleifen sind die wiederholte Ausführung einer Anweisungsfolge

for / while / do

Wann sollte man die for Schleife benutzen?

falls die Anzahl der Durchläufe von vornherein feststeht

Wann sollte man die do Schleife benutzen?

falls mindestens ein Durchlauf stattfinden muss

Wann sollte man die while Schleife benutzen?

Wenn die Anzahl nicht feststeht und nicht mindestens ein Durchlauf stattfinden muss

Warum ist count = 1 ein Ausdruck?

Weil in C Zuweisungen Ausdrücke sind.

Lernen