算数プログラマーになろう

第2日 ひきざん

rss

第2日目 ひきざん


 メニューの「問題を作る」で新しい問題を作っても良いですが、前と同じような問題になりますので、前回作成した問題を利用して新しい問題を作ってみましょう。


メニューの「問題を探す」をクリックすると公開された問題を検索できるようになりますが、この対象「公開」の部分を「自分(全て)」に変更して検索のボタンをクリックします。


これまでに作成した問題が表示されますので。問題名のところをクリックするとその問題を編集できるようになります。


ここで「この問題を手本にして問題を作る」をクリックします。


そうすると、右側と同じ内容が左に表示されますので、左の部分を直して新しい問題を作ります。



 
問題名 (*) 問題2  ひきざん
言語 (*) 日本語
問題文 (*) 次の計算をしましょう。
問題式 (*) $1-$2
解答式 (*) $1-$2=$3
制約条件 (*)

 
Rd(1,5);$1$2
$1-$2=$3;d
生成可能問題数 (*) 10


問題名を「問題2  ひきざん」に変えたのと「+」の3箇所を「-」に変えました。
なお、「+」や「-」は全角でも半角でも影響はありません。


正しく入力されていれば問題が印刷されるはずですが、問題を見て困ったことはありませんか。


もしかすると「(1)2-4」のような問題が印刷されているかもしれません。
中学生には計算できるのですが、小学生には難しいですね。


Rd(1,5);$1$2 で問題の数字を決めるときに、いつも$1$2より大きくしたいですね。
そういう場合は、次のように書けばよいのです。

 
Rd(1,5);$1$2:$1>$2


Rd(1,5);$1$2 の後にコロン(:)をつけて$1$2の条件を書くことができるのです。
$1$2よりも大きくしたいので、Rd(1,5);$1$2:$1>$2 と書けば小学生にも安心して計算できるひきざんの問題が作れます。


Rd(1,5);$1$2:$2<$1 でもよいですね。


$1$2以上にしたい場合もあるでしょう。そのときは、 Rd(1,5);$1$2:$1>=$2 と書きます。
$2$1以下にするならば、Rd(1,5);$1$2:$2<=$1 となります。


$1$2を同じ値にしたくない場合は次のように書きます。難しいかな。
Rd(1,5);$1$2:$1!=$2


同じ値にしたい場合はどうするかですが、実際は$2を使わず$1だけにすればよいわけですが、同じ値にしたいときは Rd(1,5);$1$2:$1==$2 のように=を2つ書くのです。


条件式を2つ以上並べたいときはカンマ(,)で区切ります。


Rd(1,5);$1$2$3:$1>$2,$2>$3


このようにすすると、どのような結果になるかわかりますね。


なお、$1と$2の計算結果を指定するころもできます。

 
Rd(10,18);$1
Rd(1,9);$2:$1-$2<10
$1-$2=$3;d


上の場合は、2桁ー1桁のひきざんで、答えを1桁にしたいという場合の例です。
$1が19以上だと1桁を引いても2桁以上ですから、18までにしておきました。
1桁の$2を決めるときに$1-$2を計算して10より小さいものだけを選ぶようにしています。

 
【本日のまとめ】
Rd(1,5);$1$2:$1>$2・・・$1$2より大きいものだけが選ばれる。
Rd(1,5);$1$2$3:$1>$2,$2>$3・・・$1,$2,$3の順に大きいものだけが選ばれる。
$1$2の条件は次のように書きます。
$1==$2・・・$1は$2と等しい
$1!=$2・・・$1は$2に等しくない
$1>$2・・・$1は$2より大きい
$1>=$2・・・$1は$2以上(大きいか等しい)
$1<$2・・・$1は$2より小さい
$1<=$2・・・$1は$2以下(小さいか等しい)


時間があったら、次の発展問題を作ってみましょう。
作成する問題の数は限られていますので、発展問題は問題2の制約条件を変えるだけで同じ問題番号で保存してください。



 
(発展1)Rd(10,99);$1$2:$1>$2 と変えて2けたのひきざんを作ってみましょう。
(発展2) Rd(100,999);$1$2:$1>$2と変えて3桁のひきざんを作ってみましょう。
(発展3) 3桁ー1桁のひきざんを作ってみましょう。
(発展4) 3桁ー2桁のひきざんを作ってみましょう。
(発展5) 3桁ー2桁のひきざんで答えが1桁になるものだけを作ってみましょう。