C# fakultät?

3 Antworten

Es gibt keine "if-Schleife". Eine Schleife ist eine Wiederholung eines Code-Blocks, ein if-Statement ist ein Block, der unter einer Bedingung ausgeführt wird.

Du könntest Deine While-Schleife durch eine for-Schleife ersetzen.

int y = 1;
for (int x = 1; x <= zahl; x++) y *= x;

Die for-Schleife ist halt die syntaktische Abkürzung für

int x = 1;
while (x <= zahl) {
  ...
  x++;
}
Skohsl  23.08.2022, 21:34
Die for-Schleife ist halt die syntaktische Abkürzung für

Wenn man's GANZ genau nimmt eher dafür:

{
    int x = 1;
    while (x <= zahl) {
        ...
        x++;
    }
}

Immerhin ist die Variable i nur innerhalb des Geltungsbereiches der for-Schleife gültig.

0
ohwehohach  24.08.2022, 18:51
@Skohsl

Wenn man es GANZ genau nimmt, ist es in deinem Beispiel x 😂 aber ja, du hast Recht, auch wenn es hier nicht unbedingt um den Scope ging. In C# ist es sicher so, wie du schreibst. In C wäre ich nur gar nicht sicher, ob das so stimmt. Müsste ich mal testen.

1
Skohsl  24.08.2022, 20:17
@ohwehohach

Ach verdammt, da hab ich mir wohl ein x für ein i vormachen lassen. ^^

P.S.: Hab's bereits getestet. Zumindest der GCC behandelt den Fall exakt so.

0

Es gibt keine If-Schleifen!!

siehe http://if-schleife.de/

Das einzige was mir spontank einfällt wäre eine rekursive Funktion, aber das wäre auch nicht effizzienter/einfacher.

Woher ich das weiß:Studium / Ausbildung – Informatikstudent

Du könntest Rekursion verwenden, aber so passt es auch.

if Schleifen

gibt es nicht.

Woher ich das weiß:Studium / Ausbildung