Webで学ぶセンター試験数学−BASICプログラミング > べき乗の計算

べき乗の計算

 BASICではa^bのように、べき乗a^bの計算をすることができますが、ここでは「^」を使わずにべき乗 の計算をするプログラムを作ってみましょう。

[プログラム1]

  10  INPUT PROMPT "a,b=":A;B
  20  LET ANS=1
  30  FOR I=1 TO B
  40      LET ANS=ANS*A
  50  NEXT I
  60  PRINT "a^b=";ANS
  70  END

[解説]

 プログラム1はaをb回かけることによってa^bの値を求めています。しかし、あなたはそのように計算をするでしょうか?たとえば、2^10を次のように計算しますか?

   

まずやらないと思います。おそらく、なんらかの工夫をして計算をするのではないでしょうか?

   ・・・工夫1

   ・・・工夫2

[設問]

 工夫2のアルゴリズムを記述すると以下のようになります。このアルゴリズムでべき乗を計算するプログラム2を書きなさい。

[アルゴリズム]

  1. ANS ← 1
  2. bが正である限り
    1. もしbが奇数ならANS ← ANS×a
    2. b ← INT( b / 2 )
    3. a ← a×a
    を繰り返す。
  3. ANSを出力する。

<< 前のページトップページ|次のページ >>
inserted by FC2 system