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>