Webで学ぶセンター試験数学−BASICプログラミング > SQR関数

SQR関数

SQR関数

SQR(X)
Xの正の平方根(Square Root)、つまりルートXを求めます。
ただし、数学と同様にX≧0の場合のみを考え、X<0ではエラーが出ます。

【確認1】SQR関数を用いてルート2,ルート3,ルート4の値を計算するプログラム

[プログラム]

  10  PRINT "SQR(2)=";SQR(2)
  20  PRINT "SQR(3)=";SQR(3)
  30  PRINT "SQR(4)=";SQR(4)
  40  END

[設問]

 このプログラムを実行しなさい。

[実行結果]

  SQR(2)= 1.4142135623731 
  SQR(3)= 1.73205080756888 
  SQR(4)= 2 

[解説]

 ルート2ルート3は無理数なので小数点以下が無限に続きますが、それではキリがないので適当な位で計算が打ち切られています。

【確認2】キーボードから入力された値X(X≧0)に対し、ルートXを求めるプログラム

[プログラム]

  10  INPUT PROMPT "x=":X
  20  IF X<0 THEN
  30    PRINT "Input non-negative number."
  40    PRINT "Retry!"
  50    GOTO 10
  60  END IF
  70  PRINT "SQR(x)=";SQR(X)
  80  END

[設問]

 このプログラムを実行しなさい。

[解説]

 負の数の平方根は計算できないため、X≧0以上の値が入力されるまで10行目〜60行目をループしています。

【問題1】キーボードから入力された2点(a,b),(c,d)の距離を計算するプログラム

[プログラム]

  10  INPUT PROMPT "(a,b)=":A,B
  20  INPUT PROMPT "(c,d)=":C,D
  30  PRINT SQR(_______________)

[設問]

 空欄を埋めてプログラムを完成させなさい。

[ヒント]

 2点P1(x1,y1),P2(x2,y2)間の距離公式

   2転換の距離公式

【問題2】二次方程式 の実数解を求めるプログラム

[プログラム]

    10  INPUT PROMPT "a,b,c=":A,B,C
    20  D=B^2-4*A*C
    30  IF ___ THEN
  40    PRINT "X=";_________________;
  50    PRINT ", ";_________________
    60  END IF
  70  IF ___ THEN PRINT "X=";________
    80  IF ___ THEN PRINT "解なし"
    90  END

[設問]

 空欄を埋めてプログラムを完成させなさい。ただし、a=0という入力は考えないものとする。

組込み関数

 平方根の計算は非常に手間がかかることはご存じかと思います。これは、コンピュータで計算をする場合も同様で、平方根を計算しようと思ったら複雑なプログラムを何行も書く必要があります。そして、平方根の計算はよく用いられるため、そのたびに同じプログラムを書くことになります。

 そこで、BASICでは平方根の計算などを行う組込み関数があらかじめ用意されています。わたしたちは組込み関数を利用することによってプログラムを効率よく簡単に書くことができるのです。


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