Grundlagen der Informatik
halt maul
halt maul
Fichier Détails
Cartes-fiches | 31 |
---|---|
Langue | Deutsch |
Catégorie | Informatique |
Niveau | Université |
Crée / Actualisé | 11.04.2024 / 18.04.2024 |
Lien de web |
https://card2brain.ch/box/20240411_grundlagen_der_informatik
|
Intégrer |
<iframe src="https://card2brain.ch/box/20240411_grundlagen_der_informatik/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>
|
Fülle die folgenden Lücken für den Algorithmus der Binäre Suche ein:
def binaereSuche(w, L) {
first = 0
last = ___ - 1
while (___) {
int middle = ___
if (___) {
first = middle + 1
}
else {
if (___) return true
last = middle - 1
}
}
return false
}
}
L.size(), first <= last, (first+last)/2, L[middle] < w, L[middle] == w
Trenne die Lücken mit Komma und Leerzeichen
Was sagt das EVA (IPO)-Prinzip aus?
Beschreibt den Prozess der Datenverarbeitung:
- Eingabe (Input)
- Verarbeitung (Process)
- Ausgabe (Output)
Was sind die wesentlichen Vorteile der automatisierten Datenverarbeitung?
- höhere Geschwindigkeit
- höhere Zuverlässigkeit
- geringere Kosten
Was beschreibt die Informatik?
- Wissenschaft die sich mit elektronischer Datenverarbeitung beschäftigt
-> Informationsverarbeitung unter Einsatz von Computern
Wie kann man bei der Erstellung eines Programms zur Lösung einses Problems beispielsweise Vorgehen?
1. Problemdefinition
2. Programmentwurf
3. Programmierung
In welche unterschiedlichen Softwarearten wird unterteilt?
Anwendungs- und Systemsoftware
Was ist der Grundgedanke der strukturierten Programmierung?
- Niemals ein Sprungbefehl
- Programmanweisungen sollen alle der Reihe nach erledigt werden
Kontrollstrukturen sind: Sequenz, Auswahl, Wiederholung
Welche Kontrollstrukturen gibt es in der strukturellen/prozeduralen Programmierung?
1. Sequenzen (Befehele werden nacheinander und starr abgearbeitet)
2. Auswahl ( Anweisungen die nach entweder einer true oder einer false Bedingung ausgeführt werden)
3. Wiederholungen (Schleifen die gewisse Anweisungen durchführen)
Wie würde ein Objekt in der Klasse "Auto" deklariert und definiert werden?
Auto (Klassenname) meinAuto (Deklaration) = new Auto (Defintion)
Wo werden Methoden (Funktionen) in der objektorientierten Programmierung festgelegt?
- In der Klasse
- Methode bezieht sich auf das Objekt
Wie würde eine Methode "beschreiben" auf ein mögliches Objekt angewandt werden (Beispiel Auto)?
beschreiben.meinAuto()
Fülle die Lücken der folgenden Methode aus
___ kommentieren()
{
if (a == 0)
{
____
___ "Die Gleichung ist allgemeingueltig";
____
return "Die Gleichung ist unloesbar";
}
else
String, if(b==0), return, else
Welche drei Eigenschaften muss eine Bearbeitungsvorschrift zur Lösung eines Problems haben damit es als Algorithmus zählt? (Grundeigenschaften)
- Fintheit = Vorschrift ist mit endlichen Mitteln beschreibbar
- Determinismus = Eindeutige Defintion welche Regel in der Vorschrift als nächste anzuwenden ist
- Derminiertheit = Die Ausgabe ist immer eindeutig bestimmt
Welche Erweiterungen von Eigenschaften werden für einen umsetzbaren Algorithmus verlangt? (zwei Stück)
- Platzkomplexität = Verfahren darf zu jedem Zeitpunkt nur angemessen viel Speicherplatz benötigen
- Terminiertheit = Das Verfahren sollte zu einem angemessenen Zeitpunkt termieren (es darf nicht ewig dauern)
Fülle die Lücken für den Algorithmus einer linearen Suchen mit den folgenden Parametern:
Eingabe: Zahl w, Liste von Zahlen L
Ausgabe: wahr, falsch
Problem: Ist w in L?
def lineareSuche(___) {
i = 0
while (____) {
if (___ == w) return true
i++
}
return false
}
w, L, i < L.size(), L[i]
Kann folgendes als Algorithmus bezeichnet werden? (Sichwortartige Begründung)
Zahlen addieren: Es werden zwei Zahlen a und b eingegeben. Die Vorschrift lautet:
Addiere die beiden Zahlen und gibt die Summe c = a + b aus.
Ja (Paradebeispiel)
- endliche Mittel (Finitheit)
- Summe ist immer eindeutig bestimmt (Determiniertheit)
Kann folgendes als Algorithmus bezeichnet werden? (Sichwortartige Begründung)
Ein Schachcomputer soll nach folgender Vorschrift programmiert
werden: Analysiere die Stellung deines Gegners; finde danach den besten Zug
und führe ihn aus.
Nein
- nicht erklärt was zu tun ist (Determinismus)
- Fraglich ob Analyse mit endlichen vielen Mitteln abgeschlossen werden kann
- Bester Zug kann bei einem Strategiespiel beim Schach nie eindeutig sein
Kann folgendes als Algorithmus bezeichnet werden? (Sichwortartige Begründung)
Münzwurfspiel: Man wirft eine Münze mit den beiden Seiten „Wappen“ und
„Zahl“. Das Spiel wird durch folgende Regel gesteuert: Zeigt die Münze die Zahl,
wird noch einmal geworfen, zeigt sie das Wappen, ist das Spiel beendet.
Noch nicht
- es kann nie mit Sicherheit gesagt werden wann Wappen geworfen wird
- Algorithmus wenn Erweiterung durch "nach 10 Versuchen stoppen"
Durch was erweitert C++ die Sprache C?
Durch die Objektorientierung
Bei welchen Operationen ist eine lineare Suche angebracht und wann eine Binäre Suche?
Linear: Name oder Zahl einfügen
Binär: Name Suchen
Lineare Suche nach Namen durchsucht statistisch immer die Hälfte der gesamten Liste. Grade bei großen Listen ist hier die Binäre Suche deutlich schneller
Beim Einfügen ist es meistens ratsamer eine unsortierte Liste zu führen, da das weniger komplex ist, deswegen ist hier die Lineare Suche besser
Bei der Analytischen Maschine von Babbage (nur Theorie) sollten Lochkarten für die Programme entworfen werden, was sind mögliche Vorteile von Lochkarten zur Speicherung von Daten?
- Niedrige Kosten
- Haltbarkeit
- Auch ohne Maschine Lesbar
- Leicht zu beschreiben
Analytische Maschine: Was sind die NAchteile von Lochkarten zur Speicherung von Daten?
- Dateneingabe zeitraubend
- Dateneingabe fehleranfällig
- platzraubende Lagerung
- Niedrige Einlesegeschwindigkeit
Was sind die Eigenschaften eines Halbaddierers (Schaltungen/Logik)?
Was sind die Eigenschaften des Volladdierers (Schaltungen/Logik)
- Dient der Addition zweier mehrstelliger Dualzahlen, da es hier einen alten Übertrag u1 gibt
- Additions aus drei Inputs (x,y,u1) liefert r (Ergebnisziffer) und u2
- r steht bei 1 wenn genau ein oder genau drei Inputs auf 1 stehen
- u2 also zu einem neuen Übertrag kommt es wenn genau zwei oder genau drei Inputs auf 1 stehen