一括処理部品集6‖ikura.html                            《戻る》 《玄関へ
 《 お金の種類毎に乱数を使って表示数を変えることで問題を作る。 》

【内容】
  「算数のおけいこ」の「お金は全部でいくらですか?」を問題を自動作成する。
  使うお金の種類はメニューから選べる。(千円札から1円硬貨までの組み合わせ)

【用例】
 (表定義の一部)
     [十円硬貨]:0から11の数値を乱数入力する項目(整数型)
     [一円硬貨]:0から11の数値を乱数入力する項目(整数型)
       他の金種項目は略す
     [貨幣十3]:(文字型)項目計算式は次のとおり。
             #COND([十円硬貨]>2,"EN10C.JPG",1,"")
     [貨幣一8]:(文字型)項目計算式は次のとおり。
              #COND([一円硬貨]>7,"EN1C.JPG",1,"")
       他の項目は略す
     [番号]を設け連番を予め入力している。レコード数=20

 (フォームの定義:画面演習用、略)
     フォームにピクチャーオブジェクトを設定する。
     例:十円硬貨の画像を表示するために、[貨幣十1]〜[貨幣十10]を
       設定する。(使用する十円の画像ファイルは1つだけ)

 (レポートの定義:問題印刷用、略)

 (一括処理の一部)
  名札 金種乱数入力  /* 金種のメニューに応じて使用する金種に乱数入力する
    ケース開始
     ケース (&金種=1)                     @
      繰り返し (.not #終端行)
        行訂正 [十円硬貨]=#乱数(11),[一円硬貨]=#乱数(11)   A
        &合計額=[合計額]                  B
        条件 (&合計額>0) ジャンプ 行番号=+1    C
      繰り返し終了
     ・・・・・・・・
     ケース (&金種=4)
      繰り返し (.not #終端行)
        行訂正 [百円硬貨]=#乱数(11),[十円硬貨]=#乱数(11),[一円硬貨]=#乱数(11)
        &合計額=[合計額]
        条件 (&合計額>0) ジャンプ 行番号=+1
      繰り返し終了
     ・・・・・・・・
    ケース終了
    手続き実行 表初期化
  手続き終了
     ・・・・・・・・

【解説】
 @ 使用する金種をメニューで選ばせておく。&金種=1は十円と一円を使う場合。
 A 十円と一円の数を乱数で決める。この場合0〜10の数値が発生する。
 B [合計額]の項目計算式には各金種の額面と数の積の総和が設定してある。
        ・・・+[百円硬貨]*100+・・・+[十円硬貨]*10+・・・+[一円硬貨]*1
 C [合計額]がゼロの場合は出題しないので、再度乱数入力する。
    表のレコード数の初期設定は20としている。
      なお、別のルーティンでレコードの単一化絞り込みをおこなうことで
   同一問題の重複出題を避けている。
   
【参考】
  
  その他に、「作品案内」→「算数のけいこ」→から処理画面がご覧になれます。

                      
END of FILE  戻る 玄関へ