演習問題

以下のプログラムを作成してみよう. 作成結果などを提出する必要はない. 疑問点などはTA・教員に遠慮なく質問してもらいたい.
  1. 配列の扱い
    プログラムで一見ランダムな値の列を計算することができる. (しかし, 計算機はプログラムにもとづいた計算しかしないから, 本当にランダムな値はふつうは作れない. その意味で, プログラムで作る乱数を「擬似乱数」という.)

    たとえば,第8章の「ジャンケンプログラム」のなかでは, 相手の手を予想するのに乱数を使っていた (45行目).

    ここでは, 短い二進数の系列を元にして、ちょっと長い二進の擬似乱数を生成してみよう。

    長さ4の二進系列(0と1からなる系列)を入力して、 次の規則にしたがって、配列に値を格納することにより、 擬似乱数を生成してみよう。

    a[i]の値は、(a[i-1]+a[i-4])を2で割った余りとする。ただし、iは4以上で14以下

    実行の様子はこんな感じ:

    a[0]=? 1
    a[1]=? 0
    a[2]=? 1
    a[3]=? 1
    擬似乱数系列 = 101100100011110
    
    この例の場合では、入力として、1011を入れて、a[0], a[1], ..., a[14]と順に 出力し、擬似乱数列101100100011110を生成しています。
  2. 簡単な関数の作成
    実数型データ x, yを受け取って,

    を計算する関数 r(x,y)を作ってみよう. また, この関数を呼び出すメインプログラムも書いてみよう. (メインプログラムでは, たとえば, 二つの実数を入力し, この関数を呼び出して計算し, 結果を出力する, など)。平方根に関する補足説明は、ここをみてください。

[page 2] prev index next