Witam. Na początek informuję, iż moja przygoda z programowaniem jest dosyć krótka, ale do rzeczy. Mam problem z pewnym kodem dotyczącym potęgowania w C:
#include <stdio.h>
long int potega(long int podstawa, int wykladnik)
{
int i;
int wynik = 1;
for (i = 0; i<wykladnik; i++)
wynik= podstawa*wynik;
return wynik;
}
int main()
{
int a,b;
printf("Wprowadz podstawe i wykladnik\n");
scanf("%d%d", &a, &b);
printf("Potega wynosi %d", potega(a,b));
return 0;
}
konkretnie chodzi mi o ten fragment:
#include <stdio.h>
long int potega(long int podstawa, int wykladnik)
{
int i;
int wynik = 1;
for (i = 0; i<wykladnik; i++)
wynik= podstawa*wynik;
return wynik;
}
Czy ktoś mógłby mi krok po kroku wyjaśnić jak działa ten właśnie fragment? Dlaczego dajemy zmienną i, dlaczego w instrukcji pętli for i ma być mniejsze od wykładnika? A potem dlaczego jest dane takie równanie, że wynik=wynik*podstawa?
Z góry dziękuję za pomoc.