私は9ホールごとの2つの半分のために、ゴルフの変化をシミュレートSASプログラムを記述しようとしています:変数反復(SAS)でループを実行してください
9つのホールの1半分のために:
一定の確率で値が-1,0,1,2,3,4の9面の12面のダイから始めます。
最低の値を持つダイスを選び、それらを配列に格納します。しかし、多くのダイスが最も低い値を有していた(すなわち、0が最も低い値であり、それらの3つがあった場合、2回目の反復に対してわずか6ダイスしか残っていない)。配列に9つの要素があるまで繰り返す。
これらのスコアを合計して、前半のスコアを取得します。
I(1半分の9回の合計)ラウンドごとに1個のダイスを除去し、その後、各ラウンドの最低のスコアを取った次のコードを書くことができました。しかし、私はどのように変更することができるか、またはそれを適応させることができないので、ラウンドごとにさまざまな数のサイコロを取り除くことができます(総ラウンド数< = 9)。 DIM(配列)の終了条件とループが9 =ながら
do i = 1 to 9;
do j = 9 to 1 by -1;
if i - j <= 0 then
dice(j) = rantbl(seed, p1n, p0, p1, p2, p3, p4) - 2;
else dice(j) = 100;
end;
half1(i) = min(of dice1-dice9);
end;
私は要素の指定された番号なしで配列を定義し、外側を有していると考えていた
を行うしかし、私はどのように多くの定義方法を確認していません毎回削除する要素。
誰かが私にこのアプローチにどのようなアドバイスをあげることができますか?私は入門卒業生のSASプログラミングクラスに入っているので、まだこれはかなり新しいです。
ありがとうございます!