Hallo Matthias,
mein Ansatz wäre folgendermassen gewessen.
//Rekursive Berechnung der Fakultät
import ConsoleInOut.*;
class Fakultaet
{
static int Fak(int a, int b, int c) //Annahme: n > 0
{
if (b < 2)
return 1; //Ende, wenn n < 2 ist
else
return c = a + a*(b-1); //Rekursiver Aufruf
}
public static void main (String args[])
{
System.out.println();
System.out.println("Wert der ersten Zahl ein: ");
int a = Console.console_in_int();
System.out.println("Wert der zweiten Zahl ein: ");
int b = Console.console_in_int();
if (a > 0 && b > 0)
{
int c = 0;
int Fak = Fak(a,b,c);
System.out.println("Ergebnis :" + Fak);
}
}
}
Irgendwie funktioniert es nicht.
mein Ansatz wäre folgendermassen gewessen.
//Rekursive Berechnung der Fakultät
import ConsoleInOut.*;
class Fakultaet
{
static int Fak(int a, int b, int c) //Annahme: n > 0
{
if (b < 2)
return 1; //Ende, wenn n < 2 ist
else
return c = a + a*(b-1); //Rekursiver Aufruf
}
public static void main (String args[])
{
System.out.println();
System.out.println("Wert der ersten Zahl ein: ");
int a = Console.console_in_int();
System.out.println("Wert der zweiten Zahl ein: ");
int b = Console.console_in_int();
if (a > 0 && b > 0)
{
int c = 0;
int Fak = Fak(a,b,c);
System.out.println("Ergebnis :" + Fak);
}
}
}
Irgendwie funktioniert es nicht.