Programmieren Flashcards

1
Q

a. Erklären Sie, wozu Variable benötigt werden.
b. Zählen Sie die drei Merkmale einer Variablen auf.
c. Nennen Sie mögliche Datentypen einer Variablen.

A

a. Variable sind Speicherplätze für veränderliche (variable) Daten, die für die Programmierung benötigt werden.

b. Kennwerte einer Variablen:
• Name
• Datentyp
• Wert

c. Beispiele für Datentypen:
• ganze Zahlen
• Kommazahlen
• Zeichen
• Zeichenkette
• Wahrheitswert
• Datum
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

a. Erklären Sie, wozu Variable benötigt werden.
b. Zählen Sie die drei Merkmale einer Variablen auf.
c. Nennen Sie mögliche Datentypen einer Variablen.

A

a. Variable sind Speicherplätze für veränderliche (variable) Daten, die für die Programmierung benötigt werden.

b. Kennwerte einer Variablen:
• Name
• Datentyp
• Wert

c. Beispiele für Datentypen:
• ganze Zahlen
• Kommazahlen
• Zeichen
• Zeichenkette
• Wahrheitswert
• Datum
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Variable sollen „sprechende Namen“ erhalten.

a. Erklären Sie den Ausdruck.
b. Welche Zeichen dürfen in Variablennamen nicht vorkommen?

c. Welche besondere Einschränkung gilt bei PHP?
d. Wird zwischen Groß- und Kleinschreibung unterschieden?

A

a. „Sprechende Namen“ heißt, dass der Name einen Bezug zum Inhalt geben soll. Dies erleichtert die Lesbarkeit eines Programms.
b. Umlaute, Sonderzeichen, Leerzeichen
c. Variablennamen müssen mit einem $-Zeichen beginnen.
d. Ja.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Gegeben ist folgender Ausschnitt aus einem JavaScript:

1 var zahl = 0;
2 zahl = 5;
3 zahl = zahl + 3;
4 zahl++;

a. Geben Sie den Wert der Variablen in den Zeilen 1 bis 4 an.

b. Worin besteht der Unterschied zwischen
= und ==?

A

a. 1: Wert: 0
2: Wert: 5
3: Wert: 8 (zum Wert 5 wird 3 addiert)
4: Wert: 9 (Wert wird um 1 erhöht)
b. Bei = handelt es sich um eine Wertzuweisung, bei == um einen Vergleich auf Gleichheit. (Das =-Zeichen entspricht also nicht dem Gleichheitszeichen
in der Mathematik!)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Gegeben ist folgender Ausschnitt aus
einem ActionScript:

1 if(zahl2 != 0) {
2 var resultat = zahl1/zahl2;
3 trace(resultat);
4 } else {
trace ("Division unmöglich")
5 }

Welche Ausgabe erfolgt?

a. zahl1 = 10, zahl2 = 2
b. zahl1 = 2, zahl2 = 10
c. zahl1 = 10, zahl2 = 0
d. zahl1 = 0, zahl2 = 5

A

a. 5
b. 0.2
c. Division unmöglich
d. 0

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Schreiben Sie ein PHP-Skript, das untereinander

alle ungerade Zahlen von 1 bis 99 ausgibt.

A
< ?php
for($i=1; $i<100; $i=$i+2){
echo $i.“<br>“;
}
? >
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Gegeben sind zwei Varianten eines ActionScript:
Variante 1:

1 var zahl:int = 10;
2 while (zahl>0) {
3 zahl--;
4 trace(zahl);
5 }
Variante 2:
1 var zahl:int = 10;
2 while (zahl>0) {
3 trace(zahl);
4 zahl--;
5 }

a. Geben Sie an, welche Werte bei den beiden Varianten ausgegeben werden.
b. Ändern Sie Variante 2 so ab, dass von 10 bis 0 gezählt wird.

A

a. Variante 1: 9 bis 0
Variante 2: 10 bis 1
b. Bedingung: (zahl >=0)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Wozu dienen Arrays? Geben Sie Anwendungsbeispiele.

A

Mit Hilfe von Arrays lassen sich in einer Variablen mehrere Daten als Datensatz speichern. Der Zugriff auf diese Daten, z.B. aus einer Datenbank, wird hierdurch vereinfacht.

Beispiele:
• Adresse (Name, Straße, Ort)
• Produkt (Name, Best.-Nr., Preis)
• Song (Titel, Interpret, Länge)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Gegeben ist folgendes PHP-Skript:

 0) {
$i++;
echo "$i<br>";
}
?>
a. Welchen Fehler enthält das Programm?
b. Ändern Sie das Programm so ab, dass es die Zahlen von 1 bis 100 ausgibt
A

a. Das Programm enthält eine Endlosschleife, da die Abbruchbedingung niemals erfüllt wird.
b. while ($i < 100) {

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Gegeben ist ein unvollständiges JavaScript:

var adresse = new Array (“Paul”
,”Panther”,”Hauptstraße”,”12”,
“79098”,”Freiburg”);

Ergänzen Sie das Skript so, dass der
Datensatz in folgender Form ausgegeben wird:

Paul Panther
Hauptstraße 12
79098 Freiburg

A
document.write(adresse[0]+“ “
\+adresse[1]+“<br>“);
document.write(adresse[2]+“ “
\+adresse[3]+“<br>“);
document.write(adresse[4]+“ “
\+adresse[5]+“<br>“);
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

a. Erklären Sie den Unterschied zwischen Klasse und Objekt an einem Beispiel.
b. Welchen Vorteil bietet diese Unterscheidung?

A

a. Eine Klasse ist eine abstrakte, nicht real existente Struktur. Klassen haben bestimmte Eigenschaften und
bestimmte Methoden.

Beispiel:
• Klasse: Auto
• Eigenschaften: Modell, Farbe, Baujahr
• Methoden: Auto fahren, lenken, parken,waschen

Objekte einer Klasse sind real existierend und besitzen (erben) konkrete Eigenschaften der Klasse, z. B.:
• Mercedes, blau, Baujahr 2005
• Ford, grün, Baujahr 2010

Objekte können auf die Eigenschaften der Klasse zugreifen.

b. Der Vorteil von Klassen ist, dass sie nur einmal programmiert werden müssen. Sie können in Klassenbibliotheken zusammengefasst
und veröffentlicht werden. Jeder Programmierer kann mit Hilfe von Objekten auf diese fertigen Klassen
zugreifen und spart sich somit einen großen Programmieraufwand. Das objektorientierte Konzept ist sehr flexibel und hat sich mittlerweile bei
allen wichtigen Programmiersprachen durchgesetzt.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Durch welche Maßnahmen stellen Sie sicher, dass Ihre Programme lesbar und nachvollziehbar sind.

A
  • Verwendung „sprechender Namen“ bei Variablen und Funktionen (bzw. Methoden)
  • Kommentieren des Programms
  • Formatieren des Programms, so dass zusammengehörige Teile untereinander stehen.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

a. Erklären Sie die Aussage: JavaScript ist eine clientseitige Sprache.

b. Nennen Sie zwei Anwendungsbeispiele für ein JavaScript.
c. Welches Argument spricht gegen die Verwendung von JavaScript?

A

a. „Clientseitig“ bedeutet, dass die Ausführung des Skripts durch den Webbrowser des Nutzers (clients) erfolgt und kein Webserver erforderlich ist. JavaScript kann auch ohne Internetverbindung eingesetzt werden.

b. Anwendungsbeispiele:
• Vollständigkeitsprüfung von Formularen
• Interaktive Elemente, z. B. Menüs, animierte Buttons
• Auswertung von Benutzereingaben zB. mit Ajax

c. JavaScript kann, z. B. aus Sicherheitsgründen, im Browser deaktiviert werden, so dass die gewünschten
Funktionen dann nicht möglich sind.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Nennen Sie zwei Möglichkeiten, um ein JavaScript in den HTML-Quellcode einzubinden.

A

• Aufruf einer externen JS-Datei, vergleichbar mit dem Verknüpfen eines Bildes:

• Einfügen des Skripts im Kopf oder Körper der HTML-Datei:
< script type=“text/ JavaScript“ >…< script >

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q
Gegeben ist folgendes JavaScript:
1 
2 var a = 20;
3 var b = 5;
4 var erg = a ? b;
5 document.write(erg);
6 
Ergänzen Sie in Zeile 4 den Operator, so
dass Zeile 5 folgende Ergebnisse liefert:
a. 25
b. 100
c. false
d. true
A

a. +
b. *
c. < (oder ==)
d. > (oder != oder <>)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Schreiben Sie ein JavaScript, das

a. mittels Eingabefenster zuerst die Körpergröße in m und danach das Körpergewicht in kg abfragt,

b. den Body-Mass-Index (BMI) nach
der Formel BMI = Gewicht / Größe2 berechnet,

c. den BMI in einem Fenster ausgibt.

A
Lösung zu a. bis c.:
< script type=“text/JavaScript“ >
var groesse = window.prompt
(„Körpergröße in m:“);
var gewicht = window.prompt
(„Körpergewicht in kg:“);
var bmi=gewicht/
(groesse*groesse);
window.alert(„Ihr BMI: „ + bmi.
toFixed(1));
< /script >

Hinweis: Die Eigenschaft toFixed(1) begrenzt die Anzahl an Nachkommastellen auf die in der Klammer angegebene Zahl.

17
Q

Gegeben ist folgender HTML-Link:
< a href=”#” target=”fenster” onclick= Neues Fenster

Ergänzen Sie den JavaScript-Code, so
dass das Fenster folgende Eigenschaften erhält:

  • Breite: 400 px
  • Höhe: 300 px
  • Oberer Abstand: 100 px
  • Linker Abstand: 200 px

Hinweis: Statt eines leeren Links (#) können Sie auch ein Bild anzeigen.

A

< a href=“#“ target=“fenster“
onclick=“window.open
(‚‘,‘fenster‘,‘width=400,height
=300,top=100,left=200‘)“ >

Neues Fenster < /a >

Hinweis: Zum Testen des Skripts müssen Sie in Ihrem Browser einstellen, dass eine neue Seite im Fenster und
nicht in einem neuen Tab dargestellt wird.

18
Q

Erklären Sie den Unterschied zwischen einer „normalen“ Serveranfrage und einer Anfrage über Ajax.

A

Der wesentliche Unterschied besteht darin, dass die Kommunikation mit dem Server bei Ajax asynchron erfolgt. Dies bedeutet, dass der Nutzer bereits
während des Datenaustauschs mit dem Server neue Eingaben machen kann und nicht warten muss. Die Datenübertragung erfolgt im Hintergrund,
die betrachtete Webseite wird sofort aktualisiert. Der Nutzer hat deshalb den Eindruck, als ob er sich in einem lokal installierten Programm befindet.

19
Q

Variable sollen „sprechende Namen“ erhalten.

a. Erklären Sie den Ausdruck.
b. Welche Zeichen dürfen in Variablennamen nicht vorkommen?

c. Welche besondere Einschränkung gilt bei PHP?
d. Wird zwischen Groß- und Kleinschreibung unterschieden?

A

a. „Sprechende Namen“ heißt, dass der Name einen Bezug zum Inhalt geben soll. Dies erleichtert die Lesbarkeit eines Programms.
b. Umlaute, Sonderzeichen, Leerzeichen
c. Variablennamen müssen mit einem $-Zeichen beginnen.
d. Ja.

20
Q

Gegeben ist folgender Ausschnitt aus einem JavaScript:

1 var zahl = 0;
2 zahl = 5;
3 zahl = zahl + 3;
4 zahl++;

a. Geben Sie den Wert der Variablen in den Zeilen 1 bis 4 an.

b. Worin besteht der Unterschied zwischen
= und ==?

A

a. 1: Wert: 0
2: Wert: 5
3: Wert: 8 (zum Wert 5 wird 3 addiert)
4: Wert: 9 (Wert wird um 1 erhöht)
b. Bei = handelt es sich um eine Wertzuweisung, bei == um einen Vergleich auf Gleichheit. (Das =-Zeichen entspricht also nicht dem Gleichheitszeichen
in der Mathematik!)

21
Q

Gegeben ist folgender Ausschnitt aus
einem ActionScript:

1 if(zahl2 != 0) {
2 var resultat = zahl1/zahl2;
3 trace(resultat);
4 } else {
trace ("Division unmöglich")
5 }

Welche Ausgabe erfolgt?

a. zahl1 = 10, zahl2 = 2
b. zahl1 = 2, zahl2 = 10
c. zahl1 = 10, zahl2 = 0
d. zahl1 = 0, zahl2 = 5

A

a. 5
b. 0.2
c. Division unmöglich
d. 0

22
Q

Schreiben Sie ein PHP-Skript, das untereinander

alle ungerade Zahlen von 1 bis 99 ausgibt.

A
< ?php
for($i=1; $i<100; $i=$i+2){
echo $i.“<br>“;
}
? >
23
Q

Gegeben sind zwei Varianten eines ActionScript:
Variante 1:

1 var zahl:int = 10;
2 while (zahl>0) {
3 zahl--;
4 trace(zahl);
5 }
Variante 2:
1 var zahl:int = 10;
2 while (zahl>0) {
3 trace(zahl);
4 zahl--;
5 }

a. Geben Sie an, welche Werte bei den beiden Varianten ausgegeben werden.
b. Ändern Sie Variante 2 so ab, dass von 10 bis 0 gezählt wird.

A

a. Variante 1: 9 bis 0
Variante 2: 10 bis 1
b. Bedingung: (zahl >=0)

24
Q

Wozu dienen Arrays? Geben Sie Anwendungsbeispiele.

A

Mit Hilfe von Arrays lassen sich in einer Variablen mehrere Daten als Datensatz speichern. Der Zugriff auf diese Daten, z.B. aus einer Datenbank, wird hierdurch vereinfacht.

Beispiele:
• Adresse (Name, Straße, Ort)
• Produkt (Name, Best.-Nr., Preis)
• Song (Titel, Interpret, Länge)

25
Q

Gegeben ist folgendes PHP-Skript:

 0) {
$i++;
echo "$i<br>";
}
?>
a. Welchen Fehler enthält das Programm?
b. Ändern Sie das Programm so ab, dass es die Zahlen von 1 bis 100 ausgibt
A

a. Das Programm enthält eine Endlosschleife, da die Abbruchbedingung niemals erfüllt wird.
b. while ($i < 100) {

26
Q

Gegeben ist ein unvollständiges JavaScript:

var adresse = new Array (“Paul”
,”Panther”,”Hauptstraße”,”12”,
“79098”,”Freiburg”);

Ergänzen Sie das Skript so, dass der
Datensatz in folgender Form ausgegeben wird:

Paul Panther
Hauptstraße 12
79098 Freiburg

A
document.write(adresse[0]+“ “
\+adresse[1]+“<br>“);
document.write(adresse[2]+“ “
\+adresse[3]+“<br>“);
document.write(adresse[4]+“ “
\+adresse[5]+“<br>“);
27
Q

a. Erklären Sie den Unterschied zwischen Klasse und Objekt an einem Beispiel.
b. Welchen Vorteil bietet diese Unterscheidung?

A

a. Eine Klasse ist eine abstrakte, nicht real existente Struktur. Klassen haben bestimmte Eigenschaften und
bestimmte Methoden.

Beispiel:
• Klasse: Auto
• Eigenschaften: Modell, Farbe, Baujahr
• Methoden: Auto fahren, lenken, parken,waschen

Objekte einer Klasse sind real existierend und besitzen (erben) konkrete Eigenschaften der Klasse, z. B.:
• Mercedes, blau, Baujahr 2005
• Ford, grün, Baujahr 2010

Objekte können auf die Eigenschaften der Klasse zugreifen.

b. Der Vorteil von Klassen ist, dass sie nur einmal programmiert werden müssen. Sie können in Klassenbibliotheken zusammengefasst
und veröffentlicht werden. Jeder Programmierer kann mit Hilfe von Objekten auf diese fertigen Klassen
zugreifen und spart sich somit einen großen Programmieraufwand. Das objektorientierte Konzept ist sehr flexibel und hat sich mittlerweile bei
allen wichtigen Programmiersprachen durchgesetzt.

28
Q

Durch welche Maßnahmen stellen Sie sicher, dass Ihre Programme lesbar und nachvollziehbar sind.

A
  • Verwendung „sprechender Namen“ bei Variablen und Funktionen (bzw. Methoden)
  • Kommentieren des Programms
  • Formatieren des Programms, so dass zusammengehörige Teile untereinander stehen.
29
Q

a. Erklären Sie die Aussage: JavaScript ist eine clientseitige Sprache.

b. Nennen Sie zwei Anwendungsbeispiele für ein JavaScript.
c. Welches Argument spricht gegen die Verwendung von JavaScript?

A

a. „Clientseitig“ bedeutet, dass die Ausführung des Skripts durch den Webbrowser des Nutzers (clients) erfolgt und kein Webserver erforderlich ist. JavaScript kann auch ohne Internetverbindung eingesetzt werden.

b. Anwendungsbeispiele:
• Vollständigkeitsprüfung von Formularen
• Interaktive Elemente, z. B. Menüs, animierte Buttons
• Auswertung von Benutzereingaben zB. mit Ajax

c. JavaScript kann, z. B. aus Sicherheitsgründen, im Browser deaktiviert werden, so dass die gewünschten
Funktionen dann nicht möglich sind.

30
Q

Nennen Sie zwei Möglichkeiten, um ein JavaScript in den HTML-Quellcode einzubinden.

A

• Aufruf einer externen JS-Datei, vergleichbar mit dem Verknüpfen eines Bildes:

• Einfügen des Skripts im Kopf oder Körper der HTML-Datei:
< script type=“text/ JavaScript“ >…< script >

31
Q
Gegeben ist folgendes JavaScript:
1 
2 var a = 20;
3 var b = 5;
4 var erg = a ? b;
5 document.write(erg);
6 
Ergänzen Sie in Zeile 4 den Operator, so
dass Zeile 5 folgende Ergebnisse liefert:
a. 25
b. 100
c. false
d. true
A

a. +
b. *
c. < (oder ==)
d. > (oder != oder <>)

32
Q

Schreiben Sie ein JavaScript, das

a. mittels Eingabefenster zuerst die Körpergröße in m und danach das Körpergewicht in kg abfragt,

b. den Body-Mass-Index (BMI) nach
der Formel BMI = Gewicht / Größe2 berechnet,

c. den BMI in einem Fenster ausgibt.

A
Lösung zu a. bis c.:
< script type=“text/JavaScript“ >
var groesse = window.prompt
(„Körpergröße in m:“);
var gewicht = window.prompt
(„Körpergewicht in kg:“);
var bmi=gewicht/
(groesse*groesse);
window.alert(„Ihr BMI: „ + bmi.
toFixed(1));
< /script >

Hinweis: Die Eigenschaft toFixed(1) begrenzt die Anzahl an Nachkommastellen auf die in der Klammer angegebene Zahl.

33
Q

Gegeben ist folgender HTML-Link:
< a href=”#” target=”fenster” onclick= Neues Fenster

Ergänzen Sie den JavaScript-Code, so
dass das Fenster folgende Eigenschaften erhält:

  • Breite: 400 px
  • Höhe: 300 px
  • Oberer Abstand: 100 px
  • Linker Abstand: 200 px

Hinweis: Statt eines leeren Links (#) können Sie auch ein Bild anzeigen.

A

< a href=“#“ target=“fenster“
onclick=“window.open
(‚‘,‘fenster‘,‘width=400,height
=300,top=100,left=200‘)“ >

Neues Fenster < /a >

Hinweis: Zum Testen des Skripts müssen Sie in Ihrem Browser einstellen, dass eine neue Seite im Fenster und
nicht in einem neuen Tab dargestellt wird.

34
Q

Erklären Sie den Unterschied zwischen einer „normalen“ Serveranfrage und einer Anfrage über Ajax.

A

Der wesentliche Unterschied besteht darin, dass die Kommunikation mit dem Server bei Ajax asynchron erfolgt. Dies bedeutet, dass der Nutzer bereits
während des Datenaustauschs mit dem Server neue Eingaben machen kann und nicht warten muss. Die Datenübertragung erfolgt im Hintergrund,
die betrachtete Webseite wird sofort aktualisiert. Der Nutzer hat deshalb den Eindruck, als ob er sich in einem lokal installierten Programm befindet.