HSZG Vorkurs Informatik WS 2014/Wiederholung Tag 6/Teil 1
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
<language>Java</language>
'''Aufgabe 1'''
Ergänzen Sie eine Anweisung, um den Wert der Variable x um 1 zu erhöhen! Lassen Sie sich den Wert von x anschließend auf der Konsole anzeigen!
<run id="542193a2199c0">
int x = 8;
...
</run>
'''Aufgabe 2'''
Ergänzen Sie eine Anweisung, die der Variable z die Summe aus x und y zuweist! Lassen Sie sich den Wert von z anschließend auf der Konsole anzeigen!
<run id="542193a219a37">
int x = 8;
int y = 8;
int z = 0;
...
</run>
'''Aufgabe 3'''
Ergänzen Sie Anweisungen, um die Werte von x und y miteinander zu vertauschen! Sie benötigen dazu eine Hilfsvariable. Lassen Sie sich die Werte von x und y anschließend auf der Konsole anzeigen!
Ändern Sie die Werte von x und y und prüfen Sie die Ausgabe!
<run id="542193a219aa8">
int x = 8;
int y = 10;
</run>
'''Aufgabe 4'''
Welchen Wert besitzt x, nachdem alle Anweisungen abgearbeitet sind?
<code id="542193a21989b">
int x=0;
x = x + 1;
x = x + 1;
x = x + x;
</code>
'''Aufgabe 5'''
Welchen Wert besitzt x, nachdem alle Anweisungen abgearbeitet sind?
<code id="542193a219939">
int x=0;
int y=0;
x = x + 1;
x = x + 1;
y = y + 10;
x = x + 1;
y = x + 1;
x = y + 1;
x = x + y;
</code>
Ändert sich das Ergebnis, wenn Sie
* Zeile 1 und 2 miteinander vertauschen,
* Zeile 7 und 8 miteinander vertauschen,
* Zeile 10 und 11 miteinander vertauschen?
'''Aufgabe 6'''
Beantworten Sie für alle nachfolgenden Fälle: Welchen Wert besitzt x, nachdem alle Anweisungen abgearbeitet sind? Gehen Sie wie folgt vor:
# Nehmen Sie Zettel und Stift zur Hand und zerlegen Sie die for-Schleifen in einzelne Anweisungen.
# Fassen Sie die Anweisungen zu einer einzigen Gleichung zusammen und berechnen Sie den Wert.
'''Beispiel:'''
Fall 1 entspricht:
x=x+1;
x=x+1;
...
x=x+1 (insgesamt 10 mal)
Das lässt sich zusammenfassen zu:
x=x+1+1+1+1+1+1+1+1+1+1+1
Der berechnete Wert lautet 10.
Fall 1:
<code id="5421946630df6">
int x = 0;
for(int i=0; i<10; i++){
x = x + 1;
}
</code>
Fall 2:
<code id="5421946630e73">
int x = 0;
for(int i=0; i<10; i=i+2){
x = x + 1;
}
</code>
Fall 3:
<code id="5421946630ee7">
int x = 1;
for(int i=0; i<10; i=i+1){
x = x*2;
}
</code>
Fall 4:
<code id="542195c0500c5">
int x = 1;
for(int i=0; i<10; i=i+1){
x = x + i;
}
</code>
Fall 5:
<code id="542195c050157">
int x = 1;
for(int i=0; i<10; i=i+1){
x = i;
}
</code>
Fall 6:
<code id="542195c0501df">
int x = 1;
for(int i=0; i<10; i=i+1){
x = i*i;
}
</code>
Fall 7:
<code id="5421946630ee7">
int x = 1;
for(int i=0; i<10; i=i+1){
if(i>5){
x = x + 1;
}
}
</code>
Fall 8:
<code id="54219b4c24859">
int x = 1;
for(int i=0; i<5; i=i+1){
x=x+x;
}
</code>
Fall 9:
<code id="54219b4c2490c">
int x = 1;
for(int i=0; i<3; i=i+1){
x = x*x;
}
</code>
Fall 10:
<code id="5421a53c0689f">
int x = 1;
for(int i=0; i<3; i=i+1){
x = x*i;
}
</code>
In welchen zwei Fällen ergibt die for-Schleife keinen Sinn? Kürzen Sie diese beiden Fälle in den folgenden Codeboxen ab:
<code id="542197a3b86fb"></code>
<code id="542197a3b87ba"></code>
'''Aufgabe 7'''
Welchen Wert liefert diese Methode, wenn sie mit dem Parameter
* 2
* 3
* 4
aufgerufen wird?
<code id="5421c5896c63e">if_methode(int i){
int ergebnis = i;
if(i>2){
ergebnis = ergebnis + 1;
}
if(i>3){
ergebnis = ergebnis + 1;
}
if(i<3){
ergebnis = ergebnis - 1;
}else{
ergebnis = ergebnis + 1;
}
if(i<4){
ergebnis = ergebnis + 1;
}else{
ergebnis = ergebnis - 1;
}
return ergebnis;
}</code>