【ループメニュー2】> 【約数の列挙】STEP: 9 階乗の計算 (paizaランク D 相当) [難易度: 1085 ±33]
※リンク先へ移動するためには[paiza]へのログインが必要です。
整数 N が与えられます。
N の階乗 N!
を計算して出力してください。
入力値(例)
3
出力値(例)
6
解答例
1 2 3 4 5 6 7 8 9 10 |
<?php $n = trim(fgets(STDIN)); $flag = 1; $i = 1; while($i <= $n) { $flag = $flag * $i; $i++; } echo $flag; ?> |
解説
階乗とは、1からある数までの連続する整数の積のことです。
整数5の場合、
5! = 5*4*3*2*1 = 120 となります。
while()で$i<=$nの間、定義した$flagに$iを掛け算していきます。
$flag(1) * $i(1) = 1
$flag(1) * $i(2) = 2
$flag(2) * $i(3) = 6
$flag(6) * $i(4) = 24
$flag(24) * $i(5) = 120
ループを抜けて、$flagを出力します。