🐥

5桁の10進数が回分かどうかの求め方

2021/11/24に公開

条件

5桁の数字(整数)を$iとする。

10000 ≤ $i ≤ 99999

求め方

1桁目、2桁目、4桁目、5桁目の値を求めてそれぞれを比較する。

$n1 = $i % 10; //1桁目の値
$n5 = floor($i / 10000) % 1 0; //5桁目の値
$n2 = floor($i / 10) % 10; //2桁目の値
$n4 = floor($i / 1000) % 10; //4桁目の値

if ($n1 === $n5 && $n2 === $n3) {
	echo '回分です';
} else {
	echo '回分ではありません'
}

$iが11059の場合
1桁目の値は元の数字から10で割ったあまり
$n1 = 11059 % 10 = 9

2桁目の値は10で割って端数を切り捨てた値に10で割ったあまり
$n2 = floor(1105.9) % 10 = 1105 % 10 = 5

4桁目、5桁目も同じようにして求める。
$n4 = floor(11.059) % 10 = 11 % 10 = 1
$n5 = floor(1.1059) % 10 = 1 % 10 = 1

※phpの場合はfloorで端数を切り捨てる必要がある

forループを使えばある値からある値までの回分の数をカウントすることもできる。

Discussion