Informatik (8.Klasse): Python Codeanalyse Schleife und Verzweigung?


17.02.2021, 16:01

Huch, habe gerade das Internet durchforstet und die Lösungen, zu der Aufgabe gefunden. Wäre aber trotzdem nett, wenn mir jemand das erklären könnte.

1 Antwort

Das hat mit Python eigentlich nichts zu tun.

Bei dieser Aufgabe soll man so tun, als sei man selbst der Rechner, der das Programm stur abarbeitet. Dazu dient die Tabelle unten.

Am Anfang sind alle Variablen 0.

Erster Schleifendurchlauf:

ergebnis = ergebnis + zaehler -> ergebnis = 0

Test: zaehler > 2 -> nein

also zaehler = zaehler + 1 -> zaehler = 1

Zweiter Schleifendurchlauf:

ergebnis = ergebnis + zaehler -> ergebnis = 1

Test: zaehler > 2 -> nein

also zaehler = zaehler + 1 -> zaehler = 2

nach dem vierten Schleifendurchlauf ist zaehler = 5, die Schleife bricht ab.

Das Ergebnis ist dann 6.

Anonym3333331 
Fragesteller
 17.02.2021, 16:12

Achso, danke für deine Antwort. Mein Gehirn kommt zwar immer noch nicht ganz mit, aber wenigstens weiß ich jetzt, dass es in der Aufgabe nicht um Python geht😅

0
tunik123  17.02.2021, 16:17
@Anonym3333331

Ich habe das mal zum Ausprobieren in C hingeschrieben

   int zaehler  = 0;

   int ergebnis = 0;

   int schleifen = 0;

   while(zaehler < 5) {

      ergebnis = ergebnis + zaehler;

      if(zaehler > 2) {

         zaehler = zaehler + 2;

      } else {

         zaehler = zaehler + 1;

      }

      printf("%d %d\n", ergebnis, zaehler);

      schleifen = schleifen + 1;

   }

   printf("Ergebnis = %d\n", ergebnis);

   printf("Schleifen = %d\n", schleifen);

   printf("Zaehler  = %d\n", zaehler);

Und das kommt dabei heraus:

0 1

1 2

3 3

6 5

Ergebnis = 6

Schleifen = 4

Zaehler  = 5

2