2 svar
115 visningar
Josanna behöver inte mer hjälp
Josanna 28
Postad: 6 jan 2022 10:25

forloop

Har en kod som räknar ut ett heltal upphöjt till ett annat heltal men förstår inte riktigt hur den räknar ut det i for-loopen? Om nån skulle kunna förklara i ord vad det är som händer?

#include <stdio.h>

int main(){
    
   int tal1 = 0;
    int tal2 = 0;
    int summa = 1;
    
    scanf("%d %d", &tal1, &tal2);
    
    for(int i = 1; i < tal2+1; i++)
    {
        summa = summa * tal1;
    }
    
    if(tal2 >=0)
    {
        printf("%d\n", summa);
    }
    else
        printf("Tal 2 måste vara >= 0\n");
    return 0;
}
Programmeraren 3390
Postad: 6 jan 2022 10:31 Redigerad: 6 jan 2022 10:31

Enklast är att lägga till en utskrift i loopen där du skriver ut "summa" efter varje steg. Du kan också skriva ut i och tal1 så du har allt som är inblandat i loopen.
Du kan också "köra" programmet på papper:

tal1=2, tal2=0: summa=1
tal1=2, tal2=1: summa=1, 1*2
tal1=2, tal2=2: summa=1, 1*2, 2*2
tal1=2, tal2=3: summa=1, 1*2, 2*2, 2*2*2

Josanna 28
Postad: 6 jan 2022 11:24

Tack!

Svara
Close