Verwendung einer Schleife oder der pow()-Funktion
In diesem Schritt lernen Sie zwei Methoden zum Berechnen von Potenzen in C: die Verwendung einer manuellen Schleife und die Verwendung der eingebauten pow()
-Funktion aus der Mathematikbibliothek.
Ändern Sie zunächst die vorherige Datei power_calculation.c
, um die Potenzberechnung zu implementieren:
cd ~/project
nano power_calculation.c
Methode 1: Verwendung einer Schleife
#include <stdio.h>
int calculate_power_loop(int base, int exponent) {
int result = 1;
for (int i = 0; i < exponent; i++) {
result *= base;
}
return result;
}
int main() {
int base, exponent;
printf("Geben Sie die Basiszahl ein: ");
scanf("%d", &base);
printf("Geben Sie den Exponenten ein: ");
scanf("%d", &exponent);
int power_result = calculate_power_loop(base, exponent);
printf("%d hoch %d ist: %d\n", base, exponent, power_result);
return 0;
}
Methode 2: Verwendung der pow()-Funktion
#include <stdio.h>
#include <math.h>
int main() {
int base, exponent;
printf("Geben Sie die Basiszahl ein: ");
scanf("%d", &base);
printf("Geben Sie den Exponenten ein: ");
scanf("%d", &exponent);
// Hinweis: pow() gibt ein double zurück, daher müssen wir auf int casten
int power_result = (int)pow(base, exponent);
printf("%d hoch %d ist: %d\n", base, exponent, power_result);
return 0;
}
Kompilieren Sie das Programm mit der Mathematikbibliothek:
gcc power_calculation.c -o power_calculation -lm
Beispielausgabe:
Geben Sie die Basiszahl ein: 2
Geben Sie den Exponenten ein: 3
2 hoch 3 ist: 8
Codeerklärung:
- Die Schleifenmethode multipliziert die Basis manuell mit sich selbst
exponent
-mal.
- Die
pow()
-Funktion aus math.h
bietet eine integrierte Potenzberechnung.
- Der Flag
-lm
ist erforderlich, um die Mathematikbibliothek beim Kompilieren zu verknüpfen.
- Wir casten das Ergebnis von
pow()
auf int
, um unserer ganzzahligen Berechnung zu entsprechen.