Einzelnen Beitrag anzeigen
Alt 22.12.2002, 22:50   #6
Tarjan
Quantensingularität
 
Registriert seit: 28.09.2000
Alter: 55
Beiträge: 8.336


Tarjan eine Nachricht über ICQ schicken
Standard

Ist zwar Java, das ist aber C nicht so unähnlich:

zuerst Klassisch:


Code:
	public static void main (String arguments[])
	{
		int n = 1;          // Ergebnis
		int z = -4;			// Zähler: hier beginnt die Fakultät
	
		while (z>0)
		{	
			n*=z;			// Fakulät berechnen
			z--;			// Zähler erniedrigen
		//	System.out.println(z + " " +n);
		}	
		if (z<0) System.out.println("Keine negativen Zahlen bei der Fakultät!!!");
		else
		{
			if (z==0) n=1;
			System.out.println(n);
		}
	}
und dann noch als Rekursion:

Code:
	static int Faktu (int n)	// Faktu ist eine Klassenmethode -> keine Instanz nötig
	{
		if (n<0) return -1;		// negative Zahlen haben keine Fakultät -> Code -1 zurückgeben
		if (n==0)				// Fakultät von 0 ist 1
		{
			n=1;
			return n;
		}
		else					
		{
			n *= Faktu(n-1);	// Fakultät n! ist n*(n-1)!
			System.out.print(n + " ");	
			return n;
		}
	}
	
	public static void main (String arguments[])
	{
		int n=7;
		n = Faktu(n);
		if (n == -1) System.out.println("Keine negativen Zahlen für Fakultät verwenden!");
		else System.out.println(n);
	}
____________________________________
Was ist klein, grün und dreieckig?
Ein kleines grünes Dreieck!


Bahnübergänge sind die härtesten Drogen der Welt! Ein Zug und du bist weg!
Tarjan ist offline   Mit Zitat antworten