• ベストアンサー

メンバーの組み合わせに使う乱数表

多人数で集まってテニスをするとき組み合わせをするのに乱数表を使うと便利ですよね。 人にもらった乱数表があったのですがなくしてしまいました。数学的知識は余りないので自分で作ることは不可能です。 そういうソフト(オンラインでフリーウェアなら尚可)や乱数表そのものを載せているサイトなどご存じないでしょうか?自分でも色々検索してみたんですが 探しきれなかったんです。 ちなみに条件は・・・ 1)人数は5~20人くらいまで。 2)試合はダブルスのみ。要するに4人一組を決められればいいです。 3)出来ればなるべく毎回違う人と組めるようなもの(今まで使っていたのは1234、5678、の後次は1235、4678みたいにあんまり変わらない組み合わせが続いて結局おんなじような対戦になってしまったんです。) よろしくお願いします。   

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

  • ベストアンサー
  • wolv
  • ベストアンサー率37% (376/1001)
回答No.3

 <script lang=JavaScript>から</script>までをメモ帳などにコピペして  拡張子を変えて保存 これ、そのとおりなんですが、できませんか…。 アイコンの形(表示)は、ieのアイコンになっていますか? それとも、メモ帳のアイコンになってますか? ------------------------------------------------------------ ・メモ帳のアイコンになっている場合 ファイルの保存がうまくいっていない可能性が高いです。 メモ帳にコピペする。 メモ帳のメニューから「ファイル」→「名前を付けて保存」を順に選択し、 開いた「名前をつけて保存」ダイアログで、 「ファイル名」欄を例えば「tennis.html」に、 「ファイルの種類」欄を「全てのファイル」にする。 という手順でやってみてください。 ------------------------------------------------------------ ・アイコンの形(表示)は、ieのアイコンになっている場合 ダブルクリックして、ieが起動するでしょうか? ダブルクリックして、ieが起動するのなら、 1 9 5 20 10 2 3 19 15 18 3 18 9 8 3 : :(1000行ある) : というような表示になるはずなのですがそうなりますか? そうなっていれば、それでいいのです。表示形式がかっこ悪いですが、これは先程のコードを修正するとなんとかなります。(^^; ------------------------------------------------------------ ・ダブルクリックするとieが起動するが、表示が上のようにならない場合: ieの一番した、ステータス部分は、「(ieのアイコン)ページが表示されました」になっているでしょうか? ------------------------------------------------------------ ・ステータス部分に「黄色い三角のアイコン」が表示される場合 コピペがうまくいっておらず、スクリプトにエラーがあります。 コピペ時に1文字足りなかったりしないか、確認してみてください。 ------------------------------------------------------------ その他のケース: ・ステータス部分が「(ieのアイコン)ページが表示されました」になっている ・ダブルクリックしてもieが起動しない などの場合は、ちょっと対応がよくわかりません。 ------------------------------------------------------------ 「一応やってみたけれど出来ませんでした」だけではなく、 どうなったのかをある程度詳しく書いていただいたほうが、 的確な回答ができると思います。

hi-chan
質問者

お礼

再度のご教示ありがとうございます。 先ほどつまずいていたのは「名前を付けて保存」の際に「ファイル名」欄に.htmlを付けず「ファイルの種類」欄を.htmlに変更するのだと思っていたからでした。ご指摘のとおり、どううまくいかないのか書いていればあらゆる可能性まで考慮してご回答いただくお手間をかけずに済んだのに、本当に申し訳ありませんでした。 それで・・・出来ました。感激です。 試しにn=10の場合も作ってみたのですがそれもうまく出来ました。 それになるべくバラバラになるようにとの条件3にも 当てはまっているし、求めていた通りのものでした。 自分では絶対作りえないものですから本当に嬉しかったです。 身近にこんなに詳しい方はいないし、OK Webにも感謝です。 何度も詳しく教えて下さって本当にありがとうございました。また機会がありましたらよろしくお願いいたします。

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

その他の回答 (3)

  • sen-sen
  • ベストアンサー率31% (66/211)
回答No.4

表計算ソフトウエアには乱数を発生させる関数があるので、利用されるのはいかがでしょうか。エクセルだとRAND()です。4人のグループを作ってその中の組み合わせは実力などを考えて決定するのがよいかもしれません。

hi-chan
質問者

お礼

エクセルにRANDという関数があることは今確認できました。今日はまだ試していませんが是非これもマスターしたいと思っています。エクセルもまだかじりかけなんですけど。 おっしゃる通り4人さえ特定できればその中の組み合わせはその都度色んなやり方で決めているんです。 ご回答どうもありがとうございました。

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

JavaScriptで書いた場合、例えば以下のようになります。 プログラミングを知らないひとにプログラムの書き方を教えるよりは、 自分で作ってしまったほうが相当楽なので、 作ってしまいました。 下記の内容のファイルをテキストファイルとして保存し、 (拡張子は「.html」 または、「.htm」にする。) 出来たInternetExplorerマークのアイコンをダブルクリックすると、 20人、1000回分の乱数表?ができあがります。 人数が違う場合は、n=20の部分を書き換えて使ってください。 参考にしたページ http://tohoho.wakusei.ne.jp/js/index.htm たぶん、作成所要時間10分程度、 作り方を教える場合の予想所要時間:2時間~数日、だと思います。 <script lang=JavaScript> n=20 for(i=1;i<=1000;i++){ a= Math.floor(Math.random() * n)+1; do { b= Math.floor(Math.random() * n)+1; } while (b==a) do { c= Math.floor(Math.random() * n)+1; } while (c==b || c==a) do { d= Math.floor(Math.random() * n)+1; } while (d==c || d==b || d==a) document.writeln(i+" "+a+" "+b+" "+c+" "+" "+d+"<br>") } </script>

hi-chan
質問者

お礼

お礼が遅くなってすみません。 大変お手を煩わせてしまったようで申し訳ありません。 多分とても丁寧に書いて下さっているのだと思うのですがいかんせんこちらの知識が乏しく「?」「?」の連続なんです。 参考ページは言うまでもなく理解不能ですし・・・ 数日はおろか数ヶ月かかっても理解できるとは思いません! 《下記の内容のファイルをテキストファイルとして保存し》というところでまずつまずいてます。 html形式にするとエクスプローラーが開くということは何となくわかるのですが、そこに至るまでがわかりません。<script lang=JavaScript>から</script>までをメモ帳などにコピペして拡張子を変えて保存ということでしょうか? 一応やってみたけれど出来ませんでした。 とんでもなく初歩の話かも知れないのですが、もしよろしければそこのところもご指導いただけないでしょうか。よろしくお願いします。

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

乱数は、それを適用する回数が多ければ多いほどバラツキが確からしくなりますが 2回戦程度の組み合わせを決めるのに有効であるとは思えません。 「なるべく違う人」を選ぶ選択基準を明確にして決めていく方が確実です。 それでも乱数を使いたいというのであれば、乱数表よりはサイコロの方が手軽です。 やり方は、 1) サイコロを2回振り、出た目をそれぞれa,bとします。 2) a×6+b-7を計算すると0~35までの数字が得られます。 3) 全体の人数で割った余りが、選択する人の番号(0~)になります。 4) 組み合わせ表に埋めていき同じ人の番号が出ればもう一度振り直します。 ------------------------------------------------------------------ でもやはり、パソコンでプログラムを作った方が、過去情報を利用することで 精度があがり、また、プリントも出来るので便利ではないでしょうか。

hi-chan
質問者

お礼

早速のご回答ありがとうございます。 サイコロを使うのは初めて知りましたが毎回計算するのも面倒です。(ごめんなさい。) これを使いたいテニスの集まりは6時間は続けるので 一人当たり10試合はこなす勘定なんです。 条件の3に挙げたなるべく違う人と、というのを除けばやはり乱数表を使うのが便利と思います。 もしよろしければプログラムの作り方を伝授いただけないでしょうか?ただし当方数学とパソコンに高度の知識はないので難度が高ければあきらめます。

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

関連するQ&A