« 恥と後悔と反省と義務 | トップページ | 平成20年度2学期 単位認定試験 »

2009/01/30

かけ算九九の練習問題

子供が九九をなかなか覚えないので、ちょっとスクリプトを作ってみました。

def mondai

  x = (rand * 8).to_i + 2
  y = (rand * 8).to_i + 2

  print "#{x} x #{y} = "

  z = gets

  if z == "q\n" then
    exit
  elsif x * y == z.to_i then
    print "正解 "
    flg = true
  else
    print "はずれ (#{x * y}) "
    flg = false
  end

  return flg

end

i = 0
r = 0

while true

  if mondai then
    r += 1
  end

  i += 1
  print "#{r} / #{i}\n"

end

これを「test.rb」として保存し、次のコマンドで問題開始です。

$ ruby test.rb

終了するときは「q」を入力して下さい。

この程度の計算はすぐにできるようになってね。

|

« 恥と後悔と反省と義務 | トップページ | 平成20年度2学期 単位認定試験 »

コメント

もう九九のお年頃ですか。
あまり優秀でなかった自分のことを思い出してみると,九九というのは「計算」ではなくて「暗記」の問題でしたね。
毎朝1x1から9x9まで暗唱してからでないと教室に入れない,みたいな教わり方だったような気がします。
頑張ってください!

投稿: ソウヘイ | 2009/01/31 09:26

ソウヘイさん、コメントありがとうございます。
暗唱しないと教室に入れないというのはなかなか厳しいですね。

実は僕もあまり九九を覚えるのは得意でなく、ずいぶん苦労したおぼえがあります。いつも頭の中で足し算をしながら解いていました...
この苦労を少しでも減らしてあげたいという...いらぬおせっかいかもしれません。

投稿: きむらしのぶ | 2009/02/01 07:08

はじめまして
このように問題を作成すると同じ問題が出たり、出ない問題があったりします。たとえば、2x2, 2x3, ... 2x9 を配列に入れ、その位置を乱数を使って入れ替えるとすべての問題をランダムに出すことができます。さらに、待ち行列(キュー)を使うと、すべての問題がてきるまで続けるというプログラムができます。
「九九」に関して検索すると、九九の丸暗記による弊害を唱える方もおられるようで、どうしたら良いのか判らなくなります。

投稿: f_saito | 2009/09/17 02:16

f_saitoさん、コメントありがとうございます。
ご指摘の通り、乱数では同じ問題がすぐに出たり、全然出なかったりするので、修正した方が良いかもしれません。また、時間のあるときに見直しておきます。
「九九」についてですが、かけ算のやり方を覚えて、計算の便宜上「九九」を丸暗記するというのがわかっていればそれで良いと思いますよ。「かけ算=九九」だと考える人はほとんどいないと思いますが、もしそう考えている人がいたら、代数の計算で苦労する事になるかもしれませんね。

投稿: きむらしのぶ | 2009/09/25 06:30

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/79953/43909573

この記事へのトラックバック一覧です: かけ算九九の練習問題:

« 恥と後悔と反省と義務 | トップページ | 平成20年度2学期 単位認定試験 »