再帰処理の問題は就職活動してたら必ずどこかで出題される問題です。某D社のシステムの試験に出てきたのが再帰処理の問題でした。一次試験を通り二次試験の技術者試験に再帰処理の問題が出てきました。D社に合いそうになかったので無解答に近い解答を提出し見事に不採用になりました。再帰処理の考え方は下記になります、要は参照渡しで物事を考える感じです?。実際、試験問題はそんなに簡単ではありませんが基礎になる考え方はこんな感じです?
サンプルコードのリンクを貼っときます。因みにJSには参照渡しという考え方がないので下記のようなコードになります。
JS:https://9up.me/js_mode/d2/
PHP:https://9up.me/js_mode/d2/index-rp.php
var a = 0;
function RecursiveProcessing(){
if(parseInt(a)>=999){
return true;
}
a = parseInt(a) + 1;
console.log(a);
document.getElementById("main").innerHTML = document.getElementById("main").innerHTML + a + "<br>";
return RecursiveProcessing();
}
document.getElementById("btn").addEventListener("click",RecursiveProcessing);
function RecursiveProcessing(&$a=0){
if((int)$a>=999){
return true;
}
$a++;
print $a."<br>";
return RecursiveProcessing($a);
}
RecursiveProcessing();