C# :: Aufgabe #35

15 Lösungen Lösungen öffentlich

Fakultät von n berechnen

Anfänger - C# 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

Lösungen:

2 Kommentare
vote_ok
von pocki (4190 Punkte) - 06.01.2013 um 18:58 Uhr
Meine Lösung:
Quellcode ausblenden C#-Code
void main()
{
	Console.Write("Fakultät von n: ");
	string input = Console.ReadLine();
	
	long eingabe = long.Parse(input);
	Console.WriteLine(Fakultaet(eingabe));
}

public static long Fakultaet(long zahl)
{
	if (zahl < 2)
	{
		return zahl;
	}
	return zahl * Fakultaet(zahl - 1);
}
vote_ok
von Process1 (1180 Punkte) - 15.01.2013 um 03:07 Uhr
Quellcode ausblenden C#-Code
int f(int n) {
            int ergebnis = 1;
            for (int i = 1; i<= n; i++)
                ergebnis *= i;
            return ergebnis;
        }
vote_ok
von Donni (210 Punkte) - 01.04.2013 um 12:34 Uhr
Quellcode ausblenden C#-Code
using System;

namespace Fakultät_von_n_berechnen
{
    class Program
    {
        static void Main(string[] args)
        {
            // Fenster Titel
            Console.Title = "Fakultät von n berechnen";

            // Eingabe von n
            Console.Write("Fakultät von n: ");
            int n = Convert.ToInt32(Console.ReadLine());

            // Fakultät berechnen
            long result = 1;
            for (int i = 1; i <= n; i++)
            {
                result *= i;
            }

            // Ergebnis ausgeben
            Console.WriteLine(result);
            Console.ReadKey();
        }
    }
}
vote_ok
von B.Denger (730 Punkte) - 03.09.2013 um 11:51 Uhr
Quellcode ausblenden C#-Code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace FakultätVonN
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Geben Sie eine Zahl ein, von der die Fakultät berechnet werden soll: ");
            int eingabe = Convert.ToInt32(Console.ReadLine());
            int fak = 1;
            for (int i = 1; i < eingabe; i++ )
            {
                fak *= i;   
            }
            Console.WriteLine("Die Fakultät von N ist : " + fak);
            Console.ReadLine();
        }
    }
}
vote_ok
von L4ZUR812 (630 Punkte) - 16.03.2014 um 13:48 Uhr
Quellcode ausblenden C#-Code
static void Main(string[] args)
        {
            Console.WriteLine("Von welcher Zahl soll die Fakultät berechnet werden?");
            int n = Convert.ToInt32(Console.ReadLine());
            int zahl = n;
            int fak = 0;
            for (int i = zahl; i > 1; )
            {
                i = --i;
                fak = i * zahl;
                zahl = fak;
            }

            Console.WriteLine("Die Fakultät von {0} beträgt {1}", n, fak);
            Console.ReadLine();
        }
vote_ok
von wladi-g (1310 Punkte) - 23.06.2014 um 10:08 Uhr
Quellcode ausblenden C#-Code
using System;

namespace Fakultät
{
    class Program
    {
        static void Main(string[] args)
        {
            int i, ergebnis = 1;

            do
            {
                Console.Write("Fakultät von n: ");
            } while (!int.TryParse(Console.ReadLine(), out i));

            while (i > 0)
                ergebnis *= i--;
            Console.WriteLine(ergebnis);
        }
    }
}
vote_ok
von Gisbert5020 (3120 Punkte) - 08.10.2014 um 10:32 Uhr
Quellcode ausblenden C#-Code
using System;

namespace ConsoleApplication11
{
  class Program
  {
    static void Main(string[] args)
    {
      Console.Write("Geben Sie n! Fakultät ein: ");
      int eingabe = int.Parse(Console.ReadLine());
      double zahl = 1;
      for (int i = 1; i < eingabe; i++) zahl *= i + 1;
      Console.WriteLine(zahl);
      Console.ReadLine(); 
    }
  }
}
vote_ok
von Torbo (880 Punkte) - 20.05.2015 um 13:25 Uhr
Quellcode ausblenden C#-Code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace nFaculty
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Fakultät berechnen ganz einfach");
            int x = Convert.ToInt32(Console.ReadLine());
            int y = 1;
            for (int i = 1; i <= x; ++i)
            {
                y = y*i;   
            }
            Console.WriteLine("= " + y);
            Console.ReadKey();
        }
    }
}
vote_ok
von niknik (1230 Punkte) - 13.08.2015 um 11:18 Uhr
Quellcode ausblenden C#-Code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace FakultaetRechner
{
    class Program
    {
        static void Main(string[] args)
        {
            int number;


            do
            {
                Console.Clear();
                Console.WriteLine("Fakultät welcher Zahl?");
            } while (!int.TryParse(Console.ReadLine(), out number) || number < 0);

            long result = number;

            for (int i = (number-1); i > 0; i--)
            {
                result *= i;
                if (result < 0)
                {
                    Console.WriteLine("Das Ergebnis würde zu groß werden. Wähle bitte eine niedrigere.");
                    Console.ReadLine();
                    return;
                }
            }
            Console.WriteLine("{0}! = {1}", number, result);
            Console.ReadLine();
        }
    }
}


Geht nur bis 20. Dann wird das Ergebnis zu groß
vote_ok
von n.rohde (400 Punkte) - 25.08.2015 um 10:00 Uhr
Quellcode ausblenden C#-Code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Fakultaet
{
    class Program
    {
        static void Main(string[] args)
        {
            int eingabeZahl, fakultaet = 1;

            Console.Write("Fakultät von n: ");
            eingabeZahl = Convert.ToInt32(Console.ReadLine());

            for (; eingabeZahl != 0; eingabeZahl--)
                fakultaet *= eingabeZahl;

            Console.Write(fakultaet);
            Console.Read();
        }
    }
}
vote_ok
von hollst (13980 Punkte) - 13.02.2017 um 16:20 Uhr
Quellcode ausblenden C#-Code
using System;
using System.Numerics;
using static System.Console;

namespace aufgabe_35    {
    class Program    {

        static void Main()        {
            String NL = Environment.NewLine;

            Boolean bo_next = true;
            while (bo_next)            {                
                BigInteger input = -1;

                Boolean bo_input_ok = false;
                while (!bo_input_ok)    {
                    Write(NL + "Bitte eine ganze Zahl eingeben (größer Null): ");
                    bo_input_ok = (BigInteger.TryParse(ReadLine(), out input) && (input > 0));
                }

                BigInteger fac = 1;
                for (BigInteger i = 2; i <= input; i++)
                    fac *= i;

                WriteLine(NL + "Fakultät von " + input.ToString() + " ist " + fac.ToString("n0") + NL);

                Write("Noch einmal? (Abbruch ESC)");
                ConsoleKeyInfo ki = ReadKey(true); Write(NL);
                bo_next = !(ki.Key == ConsoleKey.Escape);
            }
        }
    }
}
vote_ok
von kjaenke (1140 Punkte) - 30.10.2017 um 09:35 Uhr
Quellcode ausblenden C#-Code
 private int CalcFaculty(int value)
        {
            if (value < 0)
            {
                return 1;
            }
            var result = 1;
            for (var i = 2; i < value + 1; i++)
            {
                result *= i;
            }
            return result;
        }
vote_ok
von stcalvin (970 Punkte) - 06.02.2018 um 15:12 Uhr
Quellcode ausblenden C#-Code
        static void Aufgabe_35()
        {
            int n, summe = 1;

            Console.Write("Fakultät von n: ");
            n = Convert.ToInt16(Console.ReadLine());

            for (; n > 1; n--)
            {
                summe *= n;
            }

            Console.WriteLine(summe);
        }
vote_ok
von stbehl (1640 Punkte) - 12.02.2018 um 09:39 Uhr
Quellcode ausblenden C#-Code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace TrainYourProgrammer35
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.Write("Fakultät von n: ");
            int n = Convert.ToInt32(Console.ReadLine());
            int ergebnis = 1;
            for (int i = n; i >= 1; i--)
            {
                ergebnis *= i;
            }
            Console.WriteLine(ergebnis);
            Console.ReadKey();
        }
    }
}
vote_ok
von JKooP (18090 Punkte) - 09.01.2021 um 15:54 Uhr
NET 5.x; C# 9.x
Quellcode ausblenden C#-Code
using System.Numerics;
public BigInteger Fak(int n) => Enumerable.Range(1, Math.Abs(n)).Aggregate(1, (x, y) => y *= x);
1988707

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.