非負の整数x に対して、次のとおりに定義された手続きF(x )がある。
F(10)で印刷される結果はどれか。
ここで、p div q はp をq で割った商の部分、p mod q はp をq で割った剰余、print(p )はp の値を印刷する。
印刷は、左から右に行う。
F(x ){
if(x > 0){
F(x div 8);
print(x mod 8);
}
}
ア | 012 |
イ | 10 |
ウ | 12 |
エ | 21 |
答え ウ
【解説】
問題のプログラムに番号を付与します。
F(x ){ if(x > 0){ F(x div 8); print(x mod 8); } } |
… @ … A … B … C … D … E |
【キーワード】
・再帰呼び出し