Einführung
In diesem Lab werden wir lernen, wie man ein C-Programm schreibt, um die Fakultät einer Zahl zu berechnen. Wir werden einen einfachen Algorithmus verwenden, um die Fakultät mit einer Schleife zu berechnen.
Hinweis: Sie müssen die Datei
~/project/main.cselbst erstellen, um zu üben, wie man codiert und wie man es mit gcc kompiliert und ausführt.
cd ~/project
## main.c erstellen
touch main.c
## main.c kompilieren
gcc main.c -o main
## main ausführen
./main
Das Verständnis der Fakultät
Die Fakultät (bezeichnet als n!) für eine Zahl (z. B. n) ist das Produkt aller Zahlen vor n mit der Zahl selbst. Wir können sagen, dass
!n = n *!(n - 1)
Beispielsweise:
!6 = 6 * 5 * 4 * 3 * 2 * 1 = 720
!12 = 12 * 11 * 10 * 9 * 8 * 7 *!6 = 479.001.600
Wichtige Punkte:
- Die Fakultät von 0 ist 1.
- Die Fakultät negativer Zahlen existiert nicht.
Das Schreiben des Algorithmus
Hier sind die Schritte, die für das Fakultäts-Programm zu befolgen sind:
- Deklariere Variablen
nundfact = 1.nist die Zahl, deren Fakultät berechnet werden soll, undfactist die Variable, in der wir das Ergebnis speichern werden. - Lese die Eingabe vom Benutzer in
n. - Initialisiere den Schleifeniterator
i = 1und führe die Schleife aus, bisi <= n. - Führe in jeder Iteration der Schleife das Folgende aus:
fact = fact * ii++
- Drucke
fact.
Das Schreiben des C-Programms
In diesem Programm werden wir eine for-Schleife verwenden, um die Fakultät einer Zahl zu berechnen.
#include<stdio.h>
int main()
{
int n,i;
long int fact=1;
printf("Geben Sie die Zahl ein: ");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
fact=fact*i; // Fakultät berechnen
}
printf("Fakultät von %d ist %ld",n,fact);
return 0;
}
Das Testen des Programms
Lassen Sie uns unser Programm testen, indem wir es ausführen und die Ausgabe überprüfen.
Geben Sie die Zahl ein: 5
Fakultät von 5 ist 120
Endgültiges Programm
Hier ist das endgültige Programm, das die Fakultät einer Zahl mit einer for-Schleife berechnet:
#include<stdio.h>
int main()
{
int n,i;
long int fact=1;
printf("Geben Sie die Zahl ein: ");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
fact=fact*i; // Fakultät berechnen
}
printf("Fakultät von %d ist %ld",n,fact);
return 0;
}
Zusammenfassung
In diesem Lab haben wir gelernt, wie man ein C-Programm schreibt, um die Fakultät einer Zahl mit einer for-Schleife zu berechnen. Wir haben einen einfachen Algorithmus verwendet und einen schrittweisen Prozess verfolgt, um unser Ziel zu erreichen. Das Programm nimmt eine Eingabe vom Benutzer entgegen, berechnet die Fakultät mit einer Schleife und druckt das Ergebnis auf dem Bildschirm aus. Wir haben einige wichtige Punkte behandelt, wie die Initialisierung von Variablen und die Grenzen der Datentypen int und long int.



