技術士の技事録

新米技術士が、IT技術動向・高度資格試験対策等、現役SE向け情報を発信します。

技術士第一次試験専門科目 平成25年度 Ⅲ-3

問題

xをn乗するべき乗関数power(x,n)をC言語で実装したい。べき乗を分解して,O(n)の計算量をO(log2(n))まで削減する実装として空欄||に入る最も適切なものはどれか。ただし,nは0以上の整数とする。

doublepower(doublex,intn){if(n==0)return1;
||

選択肢

工n七工; doublerv=x; for(i=1;i<n;i+=1)rv犬=x;returnrv;
ifn毛2==0:returnpower(x犬x,nI2)re七urnx犬powe工(x,n-1)
if(n毛2==0)returnpower(x女x,nI2);re七urnx犬power(x,n-1);
if(n==1)returnx; returnx犬power(x,n-1);
if(n==1)returnx; returnx犬power(x,nI2);

 

答え

 ③

解説

 

次の問題へ専門科目TOPへ技術士TOPへ