• ベストアンサー

乱数で足し算の答えが2組ずつ同じになるように問題を作りたい

足し算の問題を乱数で左右2列に8つずつ作ります。答えがバラバラの位置で左右2組ずつ同じにしたいのですが、なかなかうまくできません。違う場所で同じ答えを見つけさせたいのです。よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • haccyan
  • ベストアンサー率43% (27/62)
回答No.3

こんにちは。 とっても面白い、エクセルの練習になりました。 では、B3:F10とH3:L10に、左右8問ずつの、0~99の値同士の足し算をつくります。 ・A3~A10に1~8を。(後でVLOOKUP検索を行うための作業列です。) ・B3とD3以下に、=TRUNC(RAND()*100)を。(0~99の、整数のみの乱数を作ります。) ・C3とI3以下に”+”を。(左右の値を足すよ!まんまですね。) ・E3とK3以下に”=”を。(略) ・F3に、=B3+D3で下にフィル。(左8問の答え。これもまんま。) ・G列は左右の問題を分けるための空白。 ・M3以下に、=RAND()を。(いきなり飛びます。作業列です。) ・N3に、=RANK(M3,M$3:N$10,1)で下にフィル。(M列の乱数の順位です。作業列です。) ・L3に、=VLOOKUP(N3,$A$3:$F$10,6,FALSE)で下にフィル。  (これで左8問の答えが、右8問の答えとしてランダムに並びます。) ・H3に、=TRUNC(L3-(RAND()*L3))で下にフィル。(L列より少ない整数です。) ・J3に、=L3-H3で下にフィル。(L列とH列の差です。これで右8問も完成です。) 以上で左8問と右8問は、答えが同じ問題が最低1問づつあります。 ”最低”と、わざわざつけたのは、 「左右で4問以上同じ答えになる場合がありえる」という意味です。 この問題については、左8問の答えの一致をしらべて、 もし一致する場合には、回避できるような関数を考えるか、 もう一度再計算をかけてみてくださいね。 また、RAND関数があるため、何かするたびに再計算が行われます。 よって、再計算のたびに問題が変わります。 変えないためにはできた問題をコピーし、値のみをペーストしてください。 ご健闘をお祈りします。

ei60
質問者

お礼

早速のご回答ありがとうございました。ぴったりとできて喜んでいます。L3に、=VLOOKUP(N3,$A$3:$F$10,6,FALSE)のところが私にはできなかったところです。”最低”と、わざわざつけたのは、 以下のご注意はよくわかります。 重複だけ気をつけます。VLOOKUPの使い方勉強してみます。ありがとうございました。

すると、全ての回答が全文表示されます。

その他の回答 (3)

  • haccyan
  • ベストアンサー率43% (27/62)
回答No.4

すみません、#3のhaccyanですが、間違いがありました。 > ・N3に、=RANK(M3,M$3:N$10,1)で下にフィル。(M列の乱数の順位です。作業列です。) 以上の関数ですが正しくは、 =RANK(M3,M$3:M$10,1)です。 おわびして訂正します。

すると、全ての回答が全文表示されます。
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

>足し算 正整数の足し算ですか >足し算 加算数の個数は左列と右列各々、2個(例23+13=)に限りますか。 左右同数に限りますか。 桁数は1桁の数が混じっても良いのでしょうか。(1+34=) >2組で左列の数2個、右列も2個の場合3個数字を乱数で拾い4つ目を足し算・引き算 a+b-cで計算すればよいと思うが、 >マイナスの数は許さないのですよね 少し多めに作ってマイナスの分は捨てるなど、作題者・人間の判断(取捨)を入れてはダメですか。 ・エクセルでやらなくても、筆算や電卓でできると、思いますがエク セルを使う理由は、乱数発生ができるからですか。 >これはエクセル関数を使おうと思っているのですか。「列」という字が、エクセルを推測させますが、関数でやりたいのですね。VBAなら 少し自由にできそうです。 ・乱数作成は、エクセル関数では=INT(RAND()*90+10)で10以上99までの乱数を発生させます。毎回変わります。 ・順番をシャッフルするのはそれ用の列を(右側分だけ)作り、並べ替えすればできます。 ーー 以上、質問者の頭には、先頭の4つのことなど、決まって頭にあることです。 しかし回答者・読者には伝わりません。 また、条件によっては、回答に根本的な変更をもたらします。 質問の表現には、最新のご注意を。 プログラムやエクセル関数でも扱う人は、細かくならざるを得ないのです。 しかし「>8つづつ」などは、余り影響のない点です。ただし1万とかほどに増えると、作業的に、「チェックもやってられない」とかになって、仕方に影響しますが。

すると、全ての回答が全文表示されます。
  • ymmasayan
  • ベストアンサー率30% (2593/8599)
回答No.1

先に左右の揃った問題を作ってから順番をばらばらに入れ替えたらどうですか。

すると、全ての回答が全文表示されます。

関連するQ&A

  • 乱数を使って条件付きのたし算の問題を作りたい

    129+438=567 のように1から9までの数字を1回ずつ使って成り立つたし算の問題を作りたいのです。5つほど見つけたのですが、乱数を使って作ることはできないでしょうか。成り立つ問題が他にもっとあるか知りたいのです。よろしくお願いします。

  • 4人1組 乱数表

    パーティーで4人1組でやるゲームを7回戦やるのですが(人数によって抜け番あり)、なるべく同じ人と組まないような組み合わせにするにはどのようにすればよいのでしょうか? 検索したらテニスのダブルスの乱数表はたくさん見つかったのですが、過去の質問にでてきたrio_dさんの乱数表(質問番号:1388951)を使ったところ問題が発生してしまいました…。 3回戦目で[1][7]:[6][8]、5回戦目で[16][6]:[7][8]、というのが存在してしまいペアは違っても結局[6][7][8]が2度同じグループになってしまったのです。 パソコン初心者でどのように変更すればよいのか、全く別の方法があるのかなど全然わかりません。できるだけ上手くバラバラに組むようにしたいと思います。よろしくお願いします!

  • Excel VBA 足し算の問題を自動生成したい

    子供のために、「1+2」のような単純な足し算の問題をひたすら大量生成したいのですが、どう組むのが一番良いでしょうか。   A  B  C  D   1 乱数 + 乱数 = 2 乱数 + 乱数 = 3 乱数 + 乱数 = 私の頭で考える限りは、こんな感じのものを何行にも渡り繰り返させれば良いのかなあとぼんやり考えているのですが、乱数を使うプログラムが私にはなかなか難しく、うまくできません。 それと・・・ ・「まったく同じ問題が二行続けて出る」事だけは避けたいのですが、 その他の重複はまったく構わないという場合はどう組めば良いでしょうか。 ・「1桁+1桁」「2桁+1桁(と、2桁+1桁)」「2桁+2桁」それぞれのシートを1枚ずつつくりたいのですが、生成される数字の桁を指定する事はできるのでしょうか。 わからない事だらけで申し訳ないのですが、教えていただけると幸いです。

  • 乱数の出し方で・・・

    たとえば、39人を乱数を使って並べ替えたいのですが、B列以降に名前や必要な項目を書き、A列に=RAND()を入れそれを使って並び替えるのではなく、1から39までの乱数を重複なしに発生させることはできないのですか???

  • 足し算どうやるの?

    足し算どうやるの? 私は少しだけそろばんをやっていたので、足し算や引き算をする時、頭にそろばんが浮かんで、簡単な式なら暗算する事ができます。 なのですごく疑問なのですが、そろばんをやってなかった人って、どうやって足し算や引き算をやっているのですか? 384+1689 を、頭の中でどうしながら、答えに導くのでしょうか?

  • 乱数とは?

    乱数について、いくつか疑問に思っていることがあります。 乱数の定義は? 辞書には、 0から9までの一〇種類の数字が、それぞれ同じ確率で現れるように並べられた数字の列。 と、書いてあります。 と言うことは、各数字の現れる確率は10%です。 大量にDATAを取れば限りなく10%に近づくと言うことです。 そこで、 DATAが少ないと乱数にも偏った値が出て各数字10%にはなりません。 と言うことは、 各数字の発生確率が偏っている段階では、 次に現れる数字の予測がある程度可能だと思っていいのでしょうか? 確率の低い数字が出る確率が高い? そうなると、 予測が可能だと乱数とは言えないのではないでしょうか? 結果として確率が均等になればいいのであって、予測が出来る出来ないは関係ない?

  • 数的処理の問題 1000人の学生を分けて、8人ずつのA組を何組かと3人

    数的処理の問題 1000人の学生を分けて、8人ずつのA組を何組かと3人ずつのB組を何組かをつくり、人数のあまりや不足がないようにする。AとBの組の数の差をできるだけ小さくするには、それぞれ何組ずつにすればよいか。 という問題で、解答は文字を使わずにさらっと答えを出していましたが、文字を使ってA組の組数aとB組の組数bを使って解けないですか。答えはA組92B組88です。

  • 5歳児(年長) 足し算 引き算

    5歳児(年長組)です。 合計20までの足し算と、合計20からの引き算をさせようとしています。 合計で10になるまでの足し算はどうにかできますが、 合計が10を越える足し算はスムースに出来ません。 引き算も同じ状態です。 指導のコツ、おすすめの玩具(?)があれば、教えてください。

  • double型の足し算について

    Java初心者です。 よろしくお願いいたします。 double型の変数に数値を代入して、足し算をするプログラムを組んだとして、 例えば、 10.5 と 1.5 を 代入すると、答えは 12.0 になりました。 問題ないです。 しかし、 数値をいろいろ変更してみると、おかしな答えになるケースがある事を発見しました。 例えば、 4.1 と 3.8 を代入すると、 7.8999999999999995 となったり、 1.8 と 2.1 を代入すると、 3.9000000000000004 となったりするのです。 なぜそうなるのか、よくわかりません。 わかり易い解説をして頂けると嬉しく思います。 よろしくお願いいたします。

    • ベストアンサー
    • Java
  • 分数の足し算で

    分数の足し算で 最近通分が出来ない子供が多いようですが 通分しないで足し算すると、正しく通分した場合の答えと大体 2:1になります。 何か法則とかあるのでしょうか?たまたま?

このQ&Aのポイント
  • 学校のセキュリティモードにG3360のプリンターを繋ぎたいが、LANポートがないか不明。
  • 製品の裏や下にもLANポートは見当たらないので、LANケーブルを繋げられない可能性がある。
  • キヤノン製品のG3360にはLANポートがあるかどうか確認したい。
回答を見る

専門家に質問してみよう