English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Kotlin Programm verwendet rekursiv die Fakultät einer Zahl

Kotlin Beispiele大全

In diesem Programm lernen Sie, wie man mit rekursiven Funktionen in Kotlin die Fakultät einer Zahl findet und anzeigt.

Die Fakultät eines positiven Numbers n gibt sich durch die folgende Formel an:

Fakultät von n (n!) = 1 * 2 * 3 * 4 * ... * n

Die Fakultät von negativen Zahlen existiert nicht. Die Fakultät von 0 ist1.

In diesem Beispiel werden Sie lernen, wie man die Fakultät einer Zahl rekursiv findet. Besuchen Sie diese Seite, um zu erfahren, wie man die Fakultät einer Zahl mit einem Loop findet. Fakultät.

Beispiel: Rekursive Fakultät

fun main(args: Array<String>) {
    val num = 6
    val factorial = multiplyNumbers(num)
    println("$num Fakultät = $factorial")
}
fun multiplyNumbers(num: Int): Long {
    falls (num >= 1)
        zurück num * multiplyNumbers(num - 1)
    sonst
        zurück 1
}

Wenn Sie das Programm ausführen, lautet die Ausgabe:

 6 Fakultät = 720

Zunächst wird von der Funktion main() multiplyNumbers() aufgerufen, und6als Parameter übergeben wurde.

Weil6größer oder gleich1übergeben hat, also6hat das Ergebnis von multiplyNumbers() multipliziert, das5 (num -1)。Weil es aus derselben Funktion aufgerufen wird, ist es ein rekursiver Aufruf.
In jeder rekursiven Aufruf wird der Wert von Parameter num verringert1,bis num kleiner ist als1。Wenn der Wert von num kleiner ist als1Es gibt keine rekursiven Aufrufe.

Jede rekursive Aufruf gibt uns zurück:

6 * 5 * 4 * 3 * 2 * 1 * 1 (for 0) = 720

Hier ist das äquivalente Java-Code:Java-Programm zum Suchen des Faktorials mit Rekursion

Kotlin Beispiele大全