hier eine andere Version, mit der man auch größere Zahlen berechnen kann. Have fun
- Code: Alles auswählen
import java.lang.*;
import java.math.*;
class MFakultaet2 {
public static void main(String[] args) {
BigInteger n = new BigInteger(args[0]);
//Vorzeichen wegmachen
n.abs();
System.out.println("n: " + n.toString());
BigInteger erg = new BigInteger("1");
System.out.println("erg: " + erg.toString());
if(n.compareTo(new BigInteger("0")) != 0) {
BigInteger i = new BigInteger("1");
while (i.compareTo(n) <= 0) {
//war zum testen gedacht, aber man kann sich dadurch die zwischenschritte anschauen
System.out.println("i: " + i.toString() + "\nerg: " + erg.toString());
erg = erg.multiply(i);
i = i.add(new BigInteger("1"));
}
}
System.out.println("Ergebnis: " + erg.toString());
}
}
