AKAD PRG21

Grundlagen der Programmierung

Grundlagen der Programmierung


T. F.
Diese Lernkarten decken Grundlagen der Informatik auf universitärem Niveau ab, von Rechnerarchitektur über Datenbankmodelle bis zu Programmierkonzepten in C++. Im Fokus stehen Schlüsselbegriffe wie Datenverwaltung, Speicherhierarchien, Algorithmen und SQL-Abfragen, ergänzt durch praktische Codebeispiele und Modellierungen. Ideal für Studierende, die theoretische Konzepte mit konkreten Anwendungen vertiefen möchten.
Flashcards
126
Students
1
Language
German
Category
Computer Science
Level
University
Created / Updated
02.01.2018 / 04.11.2026

Flashcards

Was sind mehrwertige Attribute?

Mehwertige Attribute weisen in Bezug auf die zu beschreibende Entität oder Beziehung Mehrfacheinträge auf (beherrscht mehrere Programmiersprachen; arbeitet an mehereren Projekten)

was sind abgeleitete Attribute?

Abgeleitete Attribute werden nicht direkt erfasst, sondern ergeben sich aus anderen Attributen z. B. Alter aus Geburtsdatum und aktuellem Datum

Was sind zusammengesetzte Attribute

zusammengesetzte Attribute können zum Zweck der Erfassung zerlegt werden z.B. Name in Vorname Nachname

Wann befindet sich eine Relation in der 1NF

Eine Relation ist in erster Normalform (1NF), wenn sie für jedes Attribut in einem Tupel nur eine Ausprägung enthält. Mehrfacheinträge müssen in einer eigenen Relation gespeichert werden.

Wann befindet sich eine Relation in 2NF

Eine Relation befindet sich in zweiter Normalform (2NF), wenn sie in der ersten Normalform ist und wenn alle Nichtschlüsselattribute vom gesamten Primärschlüssel vol funktional abhängig sind. Die nur von einem Teil des Schlüssel abhängigen Nichtschlüsselattribute sind in eine eigentändige Realtion auszulagern.

Wie ist die 3NF Definiert?

Eine Relation befindet sich in der dritten Normalform (3NF) wenn sie sich in der 2NF befindet und wenn keine Nichtschlüsselattribute indirekt vom Primärschlüssel sind. Jedes Nichtschlüsselattribut darf nur vom Primärschlüssel abhängen, nicht von anderen Nichtschlüsselattributen.

Der Weg der Daten vom Anwendungsbereich zur Datenbank ist lang, Wie entsteht ein Datenmodell, welche Schritte werden durchlaufen, wie wird es in eine Datenbank umgesetzt?

Durch eine intensive zielgerichtete Analyse des Anwendungsbereichs (konzeptuelle Modellierung) entsteht das {semantische Modell}, heute meist ein {ER-Modell}. Nach der Auswahl eines Datenbanksystems und damit einer Modellierungsmethode entsteht ein {ogisches Modell}. Heute ist dies meist ein {relationales Modell} und dementsprechend ein {relationales Datenbanksystem}. Das Datenmodell wird dann mit Hilfe von {SQL} in eine Datenbank umgesetzt

Wie nennt man Struktogramme noch?

Nassi-Shneiderman-Diagramme

Was beschreibt den Begriff Daten

Daten sind zum Zweck der Verarbeitung gebildete Informationen.

Daten sind Informationen aufgrund bekannter oder unterstellter Abmachungen in maschinell verarbeitbarer Form

Welche Besonderheiten treten bei der Verarbeitung von Zahlen in Rechnern bzw. C++ auf?

Bei der Ganzzahldivision in C++ entfällt ein möglicher Rest im Ergebnis.

Die C++ Datentypen "INT" und "LONG INT" können einen identischen Wertebereich aufweisen.

Das Einerkomplement ergibt sich durch eine Invertierung aller Stellen einer Dualzahl

Welche der folgenden Aussagen zu Zeichencodes sind richtig?

Welche Angaben sind notwendig zum Auffinden einer Datei auf dem Datenträger?

Eine Datei lässt sich innerhalb eines Dateisystems durch die Angabe von Laufwerk, Pfadnamen und Dateinamen eindeutig bestimmen

Welches sind in C++ Ganzzahl-Datentypen?

Was ist Pseudocode

Mit Pseudocode lassen sich Algorithmen unabhängig von einer konkreten Programmiersprache formulieren.

Erfolgt bei einer Schleife die Prüfung auf Wiederholung vor dem Durchlauf des Schleifenkörpers, dann gilt Folgendes:

Die Schleife wird eventuell gar nicht durchlaufen

 Die geprüfte Bedingung kann von einer Anweisung innerhalb des Schleifenkörpers abhängen

Welche der folgenden Aussagen ist richtig?

Welche der folgenden Aussagen zur objektorientierten Programmierung treffen zu?

Was sind typische Bestandteile einer modernen integrierten Entwicklungsumgebung

Editor

Debugger

Welchen Dezimalwert hat die Hexadezimalzahl F9

249

Taschenrechner, oder 15*16+9

Wie groß ist die Anzahl der signifikanten Dezimalstellen bei der Zahl 1300500 in Hinblick auf eine normalisierte Darstellung?

5

0,13005*10^7

Welcher Wert ergibt sich in C++ für den folgenden Ausdruck?

8*(10/4)

16

Wie viele Speicherplätze vom Typ „double“ (nicht Byte!) werden mit folgender C++-Anweisung definiert?


double feld[10][2][5];

100

Gegeben ist folgender C++-Programmcode:

int a, b, c;
double d, e;
a = 5;
b = 2;
c = 3.5;
d = a / b;
e = d + c;

Welchen Wert hat die Variable „e“ am Ende?

5,5

Gegeben ist folgender C++-Programmcode:

double d;
int i;
d = 12.357;
i = (d * 100.0) + 0.5;
d = i / 100.0;

Welchen Wert hat die Variable „d“ am Ende?

12,36

Gegeben ist ein Algorithmus über folgendes Struktogramm:



Welches Ergebnis ergibt sich für die Eingaben a=2 und b=5?

32

Gegeben ist folgender C++-Programmcode mit der rekursiv definierten Funktion „test“:

int test(int a, int b) {
   if (a >= b)
      return 1 + test(a-b, b);
   else
      return 0;
}

Welchen Wert liefert die Funktion für den folgenden Aufruf?
   test(15, 4)

3

Welche Übersetzter gibt es

Assembler

mit denen Programme in Assemblersprache übersetzt werden

Compiler

übersetzt den Quelltext einmal wärhend der Programmentwicklung in ausführbaren Maschinencode. Danach stellt der Linker Verbindungen zu Programmteilen, Standardbibliotheken o.Ä. her

Ergebnis ist eine .exe Datei

Interpreter

Der Quelltext des Programms wird immer erst dann übersetzt, wenn das Programm tatsächlich auf dem Zielrechner abläuft. Die Geschwindigkeit ist in der Regel deutlich langsamer, außerdem ist die benötigte Laufzeitumgebung Voraussetzung auf dem Zielsystem

Was ist eine Iteration

Eine Iteration ist eine wiederholte Ausführung eines Programmteils in einer Schleife

Was ist eine Rekursion

Selbstaufgruf eines Unterprogramms, führt zu einer Art Schleife bis das Abbruchkriterium erreich wird.

Was ist eine Verzweigung?

Eine Verzweigung ist eine bedingte Anweisung

Woran könnte ein Rechner erkennen, dass eine Datei leer ist?

Eine Datei ist leer, wenn Pufferanfang und Datenzeiger auf den selben Speicherplatz verweisen.

Rechnen sie die folgenden Dezimalzahlen in jedes Zahlensystem um

10#      2#    8#    16

148

16583

Rechnen sie die Dualzahlen in jedes andere Zahlensystem um

2#                                8#      16#     10#

1010

10.1001

10101010101010

Welche unterschiedlichen Informations- und Kommunikationssysteme werden unterschieden für die Arbeitsbereiche?

kommerzielle Anwendungen (Finanzbuchhaltung, Steuersoftware)

technisch-wissenschaftliche Anwendungen (Statik, Matlab)

Branchenanwendungen (Chemieindustrie, Handel)

Das Grundprinzip der Informationsverarbeitung ist?

Engabe -> Verarbeitung -> Ausgabe

Erläutern Sie kurz welche typischen einfache Datenstrukturen man in einer Programmiersprache vorfindet und geben Sie dazu auch aussagekräftige Beispiele an.

Zahlen (int, float, double)
Zeichen (char, string)
Pointer,
Aufzählungstypen

Geben Sie eine Datenstruktur an, mit der man dynamisch generierte Bäume implementieren kann. Welche Operationen würden Sie dazu anbieten?

Eine Knotenliste wie in den Abbildungen 7, dh. es gibt eine root als Start Knoten und die Knoten haben eine Wertliste und für binäre Bäume 2 Pointervariablen zu den Kindern des Knoten. Sind keine Kinder vorhanden haben die entsprechenden Pointervariablen der Wert Null.
Operationen.Navigieren im Baum, z.B.
1) Gehe zum rechten Kind,
2) gehe zum linken Kind.
3) Suche von Schlüsseln in einem binären Suchbaum.
4) Einfügen eines neuen Knoten in einem binären Suchbaum,
5) Löschen eines Knotens in einem binären Suchbaum

Welche 3 Schleifentypen unterscheidet man bei der Programmierung? Geben Sie dazu auch Struktogramme an.

1) Schleife mit Prüfung der Schleifen-Bedingung vor dem Schleifendurchlauf (while-Schleife)
2) Schleife mit Prüfung der Schleifen-Bedingung nach dem Schleifendurchlauf (while-Schleife)
3) Zählschleife mit einem vorherbekannten Anzahl von Schleifendurchläufen (for-Schleife)

Entwickeln Sie einen rekursiven Pseudo-Code zur Berechnung des n-ten Gliedes der Fibonacci Folge fib(n). Diese Folge ist für Integerwerte n 0 definiert und wird rekursive berechnet.
fib(n) = fib(n-1) + fib(n-2) mit fib(0) = fib(1) = 1.
Die ersten Glieder der Folge sind beispielsweise: 1,1,2,3,5,8,13, ….

int fib( int n)
{
if(n == 0) return 1;
if(n == 1) return 1;
return fib(n-1)+fib(n-2);
}

Was beschreibt ein logisches Datenmodell? Nennen Sie verschiedene logische Datenmodelle und erläutern Sie die wichtigsten Merkmalen für 3 der 4 in ihrem Heft diskutieren logischen Datenbankmodellen.

Hirarchisches Modell

Netzwerkmodell

Baumstruktur Modell

Study