Heim >Backend-Entwicklung >C#.Net-Tutorial >Fakultät in C#
In diesem Abschnitt werden wir die Fakultät in c# im Detail sehen. Faktorial ist ein sehr wichtiges Konzept im Bereich der Mathematik, beispielsweise in der Algebra oder in der Mathematikanalytik. Es wird durch ein Ausrufezeichen (!) gekennzeichnet. Fakultät ist jede positive ganze Zahl k, die mit k bezeichnet wird! Es ist das Produkt aller positiven ganzen Zahlen, die kleiner oder gleich k sind.
k!= k * (k-1) *(k-2) *(k-3) *(k-4) *…….3 *2 * 1.
Logik zur Berechnung der Fakultät einer gegebenen Zahl
Wenn wir zum Beispiel die Fakultät von 4 berechnen wollen, dann wäre das:
Beispiel #1
4! = 4 * (4-1) *(4-2) * (4-3)
4! = 4 * 3 * 2 * 1
4! = 24.
Die Fakultät von 4 ist also 24
Beispiel #2
6! = 6 * (6-1)* (6-2)* (6-3) * 6-4)* (6-5)
6! = 6*5*4*3*2*1
6! = 720
Die Fakultät von 6 ist also 720
In ähnlicher Weise können wir mit dieser Technik die Fakultät jeder positiven ganzen Zahl berechnen. Der wichtige Punkt hierbei ist, dass die Fakultät von 0 1 ist.
0! =1.
Dafür gibt es viele Erklärungen wie zum Beispiel für n! wobei n=0 das Produkt ohne Zahlen bedeutet und gleich der multiplikativen Entität ist. {displaystyle {binom {0}{0}}={frac {0!}{0!0!}}=1.}
Die Fakultätsfunktion wird hauptsächlich zur Berechnung der Permutationen und Kombinationen und auch in Binomialfunktionen verwendet. Mit Hilfe der Fakultätsfunktion können wir auch die Wahrscheinlichkeit berechnen. Zum Beispiel auf wie viele Arten wir k Elemente anordnen können. Wir haben k Auswahlmöglichkeiten für das erste Ding. Für jede dieser k Auswahlmöglichkeiten haben wir also k-1 Auswahlmöglichkeiten für die zweiten Dinge übrig (weil die erste Wahl bereits getroffen wurde), sodass wir jetzt k(k-1) Auswahlmöglichkeiten haben , also haben wir jetzt für die dritte Wahl k(k-1)(k-2) Wahlmöglichkeiten und so weiter, bis wir eine Sache haben, die übrig bleibt. Insgesamt haben wir also k(k-1)(k-2)(k-3)…3..1.
Ein weiteres Echtzeitbeispiel ist die Annahme, dass wir zu einer Hochzeit gehen und uns für einen Blazer entscheiden möchten. Nehmen wir also an, wir haben k Blazer und haben noch Platz für die einzigen n. Wie viele Möglichkeiten können wir also n Blazer aus einer Sammlung von k Blazern k!/(n!.(k-n)!) verwenden.
Im Folgenden finden Sie Beispiele, die zeigen, wie wir die Fakultät einer beliebigen Zahl auf unterschiedliche Weise berechnen können,
1. In diesen Beispielen wird die for-Schleife verwendet, um die Fakultät einer Zahl zu berechnen.
Code:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Factorial { class Program { static void Main() { int a = 7; int fact = 1; for (int x = 1; x <= a; x++) { fact *= x; } Console.WriteLine(fact); Console.ReadLine(); } } }
In diesem Beispiel wird die Variable vom Datentyp „Ganzzahl“ initialisiert und die for-Schleife wird zur Berechnung der Zahl verwendet.
Ausgabe:
2. In diesem Beispiel darf der Benutzer die Zahl eingeben, um die Fakultät zu berechnen.
Code:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace FactorialExample { class Program { static void Main() { Console.WriteLine("Enter the number: "); int a = int.Parse(Console.ReadLine()); int fact = 1; for (int x = 1; x <= a; x++) { fact *= x; } Console.WriteLine(fact); Console.ReadLine(); } } }
Ausgabe:
1. In diesen Beispielen wird die for-Schleife verwendet, um die Fakultät einer Zahl zu berechnen.
Code:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Factorial { class Program { static void Main() { int a = 10; int fact = 1; while (true) { Console.Write(a); if (a == 1) { break; } Console.Write("*"); fact *= a; a--; } Console.WriteLine(" = {0}", fact); Console.ReadLine(); } } }
Ausgabe:
2. In diesen Beispielen wird eine While-Schleife verwendet, um die Fakultät einer Zahl zu berechnen.
Code:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace FactorialExample { class Program { static void Main() { Console.WriteLine("Enter the number: "); int a = int.Parse(Console.ReadLine()); int fact = 1; while(true) { Console.Write(a); if(a==1) { break; } Console.Write("*"); fact *= a; a--; } Console.WriteLine(" = {0}", fact); Console.ReadLine(); } } }
Ausgabe:
1. In diesem Beispiel wird do-while verwendet, um die Fakultät einer Zahl zu berechnen.
Code:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Factorial { class Program { static void Main() { int a = 6; int fact = 1; do { fact *= a; a--; } while (a > 0); Console.WriteLine("Factorial = {0}", fact); Console.ReadLine(); } } }
Ausgabe:
2. In diesem Beispiel wird do-while verwendet, um die Fakultät einer Zahl zu berechnen.
Code:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace FactorialExample { class Program { static void Main() { Console.Write("Enter the number: "); int a = int.Parse(Console.ReadLine()); int fact = 1; do { fact *= a; a--; } while (a > 0); Console.WriteLine("Factorial = {0}", fact); Console.ReadLine(); } } }
Ausgabe:
1. In diesem Beispiel wird eine rekursive Funktion verwendet, um die Fakultät einer Zahl zu berechnen.
Code:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Factorial { class Program { static void Main() { int n= 5; long fact = Fact(n); Console.WriteLine("factorial is {1}", n, fact); Console.ReadKey(); } private static long Fact(int n) { if (n == 0) { return 1; } return n * Fact(n - 1); } } }
Im obigen Beispiel wird die Fakultät einer Zahl durch Rekursion erreicht. Die Idee hinter der Rekursion besteht darin, das Problem in kleinen Fällen zu lösen. Wenn also eine Funktion eine Schleife erstellt und sich selbst aufruft, spricht man von Rekursion.
Ausgabe:
2. In diesem Beispiel wird eine rekursive Funktion verwendet, um die Fakultät einer Zahl zu berechnen.
Code:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace FactorialExample { class Program { static void Main() { Console.WriteLine("Enter the number"); int n = Convert.ToInt32(Console.ReadLine()); long fact = Fact(n); Console.WriteLine("factorial is {1}", n, fact); Console.ReadKey(); } private static long Fact(int n) { if (n == 0) { return 1; } return n * Fact(n - 1); } } }
Ausgabe:
Daher ist das Konzept der Fakultät in Bereichen der Mathematik wie Binomialen sowie Permutationen und Kombinationen sehr wichtig, und auf diese Weise können wir die Fakultät einer beliebigen Zahl drucken, indem wir mehrere Methoden wie for, while, do-while, function verwenden usw.
Das obige ist der detaillierte Inhalt vonFakultät in C#. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!