例えば、ループ処理で,
1から10までを順番に並べるという事は、誰でも出来ると思う。
index.php
for($i=1; $i<=10; $i++){
echo $i."\n";
}
/*
1
2
3
4
5
6
7
8
9
10
*/
これは、問題なかろう。
ただし、10以降の数字を一の位だけで、表示しろと言われたら、分からなくなってしまう方も
いらっしゃると思う。ちなみにメソッドや既存の関数は使用しないという前提条件があるとする。
index.php
<?php
//$n(数値)の個数をカウントする
for($i = 0; $i < 10; $i++){
$n = (int)trim(fgets(STDIN));
if($n >10){
$answer = $n - 10;
echo $answer."\n";
}else{
echo $n."\n";
}
}
?>
この問題を解くのに、2時間は当時要したが、問題が解けた時に、とても感動を覚えた。まずは、10より大きくなった場合と、そうで無い場合の2パターンを条件分岐で考える。ifとelseifがここで頭にパッと思い浮かぶ訳である。さらに、nが10より大きい場合は、nから10を引いた数字をanswerにいれて、それを表示させてやる必要がある。
反対に、nが10より小さい場合は、そのまま値を出力してあげればいいので、上のようなコードに仕上がった。
まとめ
プログラミングとは、論理的思考が求められる。このロジカルシンキングを大事にして、プログラミングを通して鍛えていきたい。まだまだひよっ子だけども、エンジニアになりたい。
誰かの参考になれば、嬉しいです。アディオス!