- 締切済み
一点だけを並び替えてすべて表示したいのですが・・・
一次元配列に0~Nまでの数字を重複しないでランダムに入れて、その配列の中から一つをランダムに選び、その数字だけを並び替えて表示したいのです。 例えば、x[N]の配列があって、x[4]だったとします。 x[0] = 3, x[1] = 2, x[2] = 0, x[3] = 1と重複しない0~N(この場合は3)までの数字をランダムに配列に入れます。ここで、表示すると3201となります。 そして、その中からランダムに一つ選びます。この場合、x[2] = 0を選んだとします。それで、0321 3021 3201 3210と、x[2]だけを移動させるものを表示したいのですが良く分かりません。 重複しない乱数や、ランダムに一つ選ぶところは分かっているので、移動させて表示させる部分を教えてください。初歩的かもしれませんがお願いします。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- seven_star
- ベストアンサー率33% (1/3)
関連するQ&A
- VBで作った乱数を一度も重複させずに表示する方法を教えてください!
VB2005で乱数を作り、ボタンを押すごとに一つづつその数字がひょうじされるようにしたいのですが、その数字が一度も重複されないようにするにはどうしたらいいのでしょうか? 例えばボタンを百回押すと、1から100までの数字がランダムに、一度も重複されずに表示されるようにするにはどのようなコードを書けばよいのでしょうか?
- ベストアンサー
- Visual Basic
- C++で画像を被らないようにランダムに表示
初めまして。 現在、C++を勉強しているものです。 配列に収納された画像をランダムにpictureboxに表示させたいです。 しかし、ダブらないようにしたいです。 1枚だけならどこかでソースが載っていたのでそれをコピーしたらいいだけだと思うので問題はないのですが、3枚をランダム表示させ、なおかつ同じ物が表示しないようにしたいのです。 1枚目の画像が決定した後、それ以外の画像からランダムに選択。さらに1枚目・2枚目の画像が決定したらそれ以外の画像からランダムに選択。 初心者の案としては (1)重複なしの乱数を生成 (2)生成された数を配列と参照する (3)参照された画像をpictureboxに表示する こんな事が出来ますか? また、どうしたらいいのでしょうか? よろしくお願いします。
- 締切済み
- C・C++・C#
- 数千の配列をランダムに並べて表示
数千の配列をランダムに並べて表示させるプログラムを作りたいと思っています。プログラムはPHPを考えています。 例えば配列数を1000だとすると $file_name[0] = "files0"; $file_name[1] = "files1"; $file_name[2] = "files2"; $file_name[3] = "files3"; $file_name[4] = "files4"; ・・・ $file_name[999] = "files999"; だとします。この配列からランダムに重複無く表示したいと思っています。出力例として、 files3 files328 files1 files32 ・・・ files473 とこんな感じです。私の考えたアルゴリズムではランダムの数字を出力し、その配列が表示されていれば再度ランダムな数字を算出、配列が表示されていなければ表示し、配列が表示されたというフラグを付けます。 しかし、この方法だと最初はスムーズに出てくるのですが、最後にはなかなか出力されないようになります。当然といえば当然ですが。 アルゴリズムだけでも、ご存知の方ご教授いただけると幸いです。
- ベストアンサー
- PHP
- 配列と乱数を使ったプログラム
配列と乱数を使ったプログラムについて 今年からプログラミングについて勉強する事になったのですが、 配列と乱数を上手く使うことができません。やりたいと思っていることが おみくじのプログラムで 大吉 中吉 小吉 という3つの配列からウィンドウ上にランダムで 一つ表示するというプログラムです。 【おみくじの結果は *** です。】 ←***の部分がランダムに配列から表示される結果です。(分かりづらなかったら、ごめんなさい) 病欠で2週ほど授業に出席する事が出来なかったので、配列と乱数についてよく分かりません。 PENというソフトで学習しているので、出来るならPENにそって教えてもらえると、嬉しいです。 宜しくお願いしますm(_ _)m
- ベストアンサー
- C・C++・C#
- vc#で15パズル
学校のvisual c#の課題で15パズル(1~15の数字を並べ替える)を作ろうと思ったんですが、どうすればいいか分かりません。 ボタンを4×4ならべて、空のボタンの隣のボタンが押されると入れ替わるという方式で作ろうと思ってます。 初心者の頭でどうにか思いついたこと↓ 「2次元配列で各ボタンに値を対応させる? 数をばらばらに並べる際の方法。(乱数を使う?でも、乱数だと重複 しそう)」 大まかな流れだけでいいので教えていただけると幸いです。
- ベストアンサー
- その他(プログラミング・開発)
- 公平なランダム
重複のないn個の配列を作成する、効率がよくて高速なランダム発生プログラムを探しています。 現在は下記のようなロジックを組んでいます。 1.n個の配列を用意(nはパラメータで与えられる) 2.配列に1からnまでの数値を昇順に格納 3.ランダムな値xを生成し、配列の1番目とx番目を交換 4.ランダムな値xを生成し、配列の2番目とx番目を交換 : : 5.ランダムな値xを生成し、配列のn番目とx番目を交換 この方法を越えるものはないでしょうか。 条件は、効率(公平性)がこれよりも高くて、速度が O(2n) を超えないことです。 最終的に配列の先頭20個程度の効率が高くなっていればよく、それ以降は多少偏りがあっても構いません。 ちなみに現在は、単純に x = rand(n); という方法で生成しており、初期化関数は使っていません。 よろしくお願いします。
- ベストアンサー
- Perl
- 配列変数に重複のないランダムな数字を入れて行くには?
JavaScript初心者です。 配列にランダムな数字を入れたいのですが、 aRnd = new Array(); aRnd[0] = Math.floor(Math.random()*100); aRnd[1] = Math.floor(Math.random()*100); aRnd[2] = Math.floor(Math.random()*100); のようにやると各配列にはランダムな数字が入りますが、重複が発生する可能性があります。これを重複が発生しないようにしたいのですが、どのようにすればいいのでしょうか? なお、上記例では0~99までの数字を3つの配列にセットする方法となっていますが、配列数や数字の最大値は変更する可能性があるので、これも配慮したいと思います。 よろしくお願いいたします。
- ベストアンサー
- JavaScript
- エクセル 任意の数字から始まる重複しない乱数
お世話になります。 エクセル2003/XP 使用です。 RANK関数またはそれに似た利用方法でご教授願いします。 下記ページを参考に、"重複しない乱数”を作成しました。 http://www.relief.jp/itnote/archives/001798.php (ページ中程、▼操作手順:重複しない乱数を作成する 以下の部分) 乱数の最初の数字が1から始まる分には問題なくできるのですが、 乱数の数字を、「任意の数字から始めて」、 「任意の数字で終わる」ようにすることは可能でしょうか? 例えば、下記の例でいうと、 6から始まり10で終わる乱数です。 A列 B列 1行目 / =RAND() / 1-5の範囲でランダムな重複しない乱数 2行目 / =RAND() / 同上 3行目 / =RAND() / 同上 4行目 / =RAND() / 同上 5行目 / =RAND() / 同上 ------------------------------------------------------------ 6行目 / =RAND() / 6-10の範囲でランダムな重複しない乱数 7行目 / =RAND() / 同上 8行目 / =RAND() / 同上 9行目 / =RAND() / 同上 10行目 / =RAND() /同上 (11以下、繰り返し 略) よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- 多次元配列への数値の代入。
こんにちは。 今、多次元配列への数値の代入の仕方で、悩んでいます。 A[][] = new int[n][n]; B[][] = new int[n][n]; 上記のようなn行n列の配列を宣言し、nを入力します。 例えば、n=100と入力すると、100行100列の配列を定義したことになり、Aの配列には1~10000、Bの配列には10001~20000の数値を代入、200×200であれば1~40000、40001~80000…という感じにしたいのですが、いいアイディアが浮かびません。 また、1~nの間でランダムに数値を選び、その数値を代入というのも考えましたが、Javaで乱数を代入できるのかな?という疑問が出来てしまい、わからなくなってしまいました。 何かいい考えがありましたら、ぜひ教えてください。 よろしくお願いします。
- ベストアンサー
- Java
- 乱数ってなんですか?
なんどもすいません。配列のはなしなんですが、まずAという配列の中の0~10番目の中身をランダムに動かして、Bという配列に再編成させたいのですが、 乱数を使えば簡単になるよと知り合いにはいわれたのですが、乱数がどうゆうもの だかあまりよくわかりません。 自分は今VC++のMFCで作ってるのですが、乱数自体がわからないので教えてください。 それとこの方法でいくと日本語の時は配列を2個づつランダムに変えることになると思うのですが、それはぜんぜん予想もできません。教えていただけると助かります。お願いします。
- ベストアンサー
- C・C++・C#