Entwickler-Ecke
Sonstiges (.NET) - c# Visual Express 2010 - Arbeiten mit Variabeln
interessierter - Mo 20.02.12 22:56
Titel: c# Visual Express 2010 - Arbeiten mit Variabeln
Hallo Zusammen
Ich befasse mich in meinem C# Lehrgang gerade mit Variabeln. Für das allgemeine Verständnis werde ich folgend kurz meine Aufgabenstellung schildern:
Ich ziehe im c# Visual Express via Drag&Drop einen Button in Form1.cs und beschrifte den Button mit Button 1. Anschliessend muss ich einen vorgegeben Code für diesen Button schreiben und vorhersagen was mir die MessageBox anzeigen wird ohne vorher zu debuggen.
Es geht hauptsächlich um while und for Schleifen.
Um vorherzusagen was die MessageBox anzeigen wird muss ich aber verstehen was der Code genau macht (rechnet) und dort liegt das Problem.
Kann mir jemand für folgenden Code erläutern wie der Code funktioniert resp. was und wie der Code genau rechnet:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18:
| private void button4_Click(object sender, EventArgs e) { int anzahl = 0;
while (anzahl < 10) { anzahl = anzahl +1; }
for (int i = 0; i < 5; i++) { anzahl = anzahl -1; } MessageBox.Show ("Die Antwort ist" + anzahl); }
} } |
Liebe Grüsse
interessierter
Moderiert von
Kha: C#-Tags hinzugefügt
daeve - Mo 20.02.12 23:54
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22:
| private void button4_Click(object sender, EventArgs e) { int anzahl = 0;
while (anzahl < 10) { anzahl = anzahl +1; } for (int i = 0; i < 5; i++) { anzahl = anzahl -1; }
MessageBox.Show ("Die Antwort ist" + anzahl); } |
hoffe das du jetzt den durchblick hast ;)
interessierter - Di 21.02.12 00:26
Also wenn ich das richtig verstanden habe dann rechnet die While Schleife von 0 immer +1, solange der Wert <10 ist. Also 9 mal +1.
Von diesen 9 rechnet dann die for Schleife solange -1 bis der Wert <5 ist? Von 9 wären das dann 5 mal -1, so komme ich dann auf 4.
Zeigt die for Schleife an wieviel mal sie -1 rechnen musste? dann müsste das ergebnis ja 5 sein und die MessageBox müsste dan als Ergebnis 5 anzeigen.
Ich habe es versucht, und nach dem Debuggen zeigt es mir wirklich 5 an.
Wenn die for Schleife nur anzeigt wieviel mal sie -1 rechnen musste dann habe ich es wahrscheinlich verstanden.
Stimmt meine Aussage?
jaenicke - Di 21.02.12 07:25
interessierter hat folgendes geschrieben : |
Also wenn ich das richtig verstanden habe dann rechnet die While Schleife von 0 immer +1, solange der Wert <10 ist. Also 9 mal +1. |
Die Schleife läuft solange wie anzahl < 10 ist. Bei 9 ist anzahl ja noch kleiner, also läuft die Schleife noch einmal durch, danach ist es 10, also nicht mehr kleiner. Daher wird die Schleife dann abgebrochen, der Wert ist dann aber 10.
interessierter hat folgendes geschrieben : |
Von diesen 9 rechnet dann die for Schleife solange -1 bis der Wert <5 ist? Von 9 wären das dann 5 mal -1, so komme ich dann auf 4. |
Die for-Schleife läuft so lange bis i < 5 nicht mehr wahr ist. Nach jedem Durchlauf wird zuerst i++ ausgeführt, dann die Bedingung geprüft.
Das ganze siehst du aber sehr gut im Debugger:
Den Haltepunkt oben kannst du mit einem Klick auf die Leiste links oder mit F9 setzen. Wenn das Programm dann beim Ausführen dort ankommt, kannst du mit F10 schrittweise durch den Quelltext laufen. Wenn du die Maus über eine Variable hältst, siehst du deren Wert, zudem siehst du unten die Werte der lokalen Variablen.
interessierter - Mi 22.02.12 00:35
Super, vielen Dank. Diesen Thread werde ich gleich mal als PDF speichern. Kann immer mal wieder nützlich sein :)
Grüsse
interessierter
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!