forループを使用して数値のスーパー階乗を計算して出力するプログラムを作成します。数の階乗は、その数を含むすべての整数の積であるので、4の階乗は4 * 3 * 2 * 1 = 24です。スーパーファクトリープログラムはどのように書くのですか?
スーパー階乗は、その階乗までのすべての階乗の
4 !! = 4!* 3!* 2!* 1!
私は、次のコードを使用して "階乗" が見つかりました:
import java.util.Scanner;
public class superfactorial {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input = new Scanner (System.in);
// number whose factorial to be found
int number;
// prompting input
System.out.print("Enter number: ");
number = input.nextInt();
int factorial = factorial(number);
System.out.printf("the factorial of %d is %d", number , factorial);
}
// method that calculates the factorial
public static int factorial (int n){
int output = 1;
for (int i=1; i <= n; i++) {
output = output * i;
}
return output;
}
}
これには 'int'を使用しないでください。十分な大きさの数値が格納されません。おそらく 'BigInteger'クラスを使うことを学びたいと思うでしょう。 –
私は知っていますが、私の質問はスーパーファクターを見つける方法か、そのコードを書く方法です –
誰かにコードを書いてほしいと言っていますか? 'factorial'メソッドを書くことができれば、あなたは' superfactorial'メソッドを書くために知っておくべきことをすでに知っているようです。あなたは正確に何を苦労していますか? –