Java :: Aufgabe #36 :: Lösung #13

14 Lösungen Lösungen öffentlich
#36

Fakultät von n berechnen

Anfänger - Java von Dome - 03.01.2013 um 01:39 Uhr
Schreiben Sie ein Programm, oder eine Funktion, die die Fakultät einer beliebigen Zahl berechnet ohne eine vorhandene Funktion aus der Programmbibliothek zu verwenden.

Konsolenausgabe:

Fakultät von n: 10
3628800
#13
vote_ok
von nOrdan (1160 Punkte) - 04.06.2019 um 23:57 Uhr
Anmerkung: Ich arbeite mit dem Programm BlueJ

Quellcode ausblenden Java-Code


import Methodensammlung.Methoden;

/**
 * Die Fakultät von Ganzzahlen bis inklusive 34 kann berechnet werden
 * 
 * @author (nOrdan) 
 * @version (04.06.2019)
 */
public class Fakultät
{

    Methoden m = new Methoden();

    public static void main(String [] args)
    {
        Fakultät f = new Fakultät();
        f.inputs();
    }

    private void inputs()
    {
        boolean valid1 = false;
        int n = 0;
        while (valid1 == false)
        {
            String input1 = m.userInput("Geben sie die Zahl ein, für welche die Fakultät berechnet werden soll");
            m.errorUserInput(input1);
            try
            {
                n = m.parseInt(input1);
                valid1 = true;
            }
            catch(Exception e)
            {
                m.errorMessage("Invalid user input","Input error");
            }
        }
        berechnung(n);
    }

    private void berechnung(int n)
    {
        float ergebnis = 1f;
        if (n == 0)
        {
            
        }
        else if (n > 0)
        {
            for (int i = 1; i < n; i++)
            {
                ergebnis += ergebnis * i;
            }
        }
        else if (n >= 35)
        {
            m.errorMessage("Die Fakultät von 35 ist zu groß für das Programm","Size busy");
        }
        else
        {
            n = n * -1;
            for (int i = 1; i <= n; i++)
            {
                ergebnis = ergebnis * i;
            }
        }
        m.informationMessage("Die Fakultät von " + n + " ist " + ergebnis,"Ergebnis");
    }
}

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben
2095344

Du scheinst einen AdBlocker zu nutzen. Ich würde mich freuen, wenn du ihn auf dieser Seite deaktivierst und dich davon überzeugst, dass die Werbung hier nicht störend ist.