• ベストアンサー

「C#」言語のトレースについて

jjon-comの回答

  • ベストアンサー
  • jjon-com
  • ベストアンサー率61% (1599/2592)
回答No.1

整数型の配列 me[0]~me[5] を新たに確保 int[] me = new int[6]; 変数iの値を0~5まで変化させながら6回ループ for(int i = 0;i<6;i++)   me[0]~me[5]の中身をゼロで初期化する   me[i] = 0; 乱数を生み出すオブジェクトを用意 Random ran = new System.Random(); 変数iの値を0~99999まで変化させながら10万回ループ for(int i = 0;i<100000;i++) {   0~5の範囲の整数の乱数を生成し,変数resultに格納   int result = ran.Next(6);   「乱数」番目の配列要素,すなわち,me[0]~me[5]のいずれかに1を足す   me[result]++; } 変数iの値を0~5まで変化させながら6回ループ for(int i = 0;i<6;i++)   各サイコロの目が出た回数の集計結果 me[0]~me[5] を表示する   Console.WriteLine("{0}: {1} times",i+1 ,me[i]); 最終的な出力例はこんな感じ↓ 1: 16671 times 2: 16473 times 3: 16908 times 4: 16614 times 5: 16555 times 6: 16779 times

wwmomo
質問者

お礼

ご回答ありがとうございます。 私が理解に苦しんだのは、「me[result]++」の所でした。 これは「me[0]~me[5]の何れかに1を足す」と言うことなのですね。 更に質問で悪いのですが、何故「me[i]」と「me[result]++」が同じになるのですか。 取得してきた値が「0~5」だから「me[i]」と「me[result]++」が同じになるということですか。 「result」で取得した値が「5」だった場合、「me[result]++」には何が入るのですか。 ここで「++」をしてますよね。この「++」は、どのような意味を持っているのですか。 まだ少し「me[i]」と「me[result]++」の関連性が分かりません。 恐縮ですが、よろしければ教えて下さい。 以上、よろしくお願い致します。

関連するQ&A

  • 「C#」言語のトレースについて…その(2)

    当方、「C#」言語を勉強しようとしています。 そこで入門関係のサイトをウェブで見付けました。 そのサイトは下記URLになります。 http://www12.plala.or.jp/dokugaku/main/4/4.html このサイトの「XorEncoderのベースソース」のトレース方法を教えて下さい。 文章を読んだだけでは理解することが出来ませんでした。 出来れば分かり易く解説して頂けると幸いです。 お手数お掛けしますが、ご存知の方おられましたら、ご教授お願いします。 以上、よろしくお願い致します。

  • 「C#」言語のトレースについて…その(3)

    当方、「C#」言語を勉強しようとしています。 そこで入門関係のサイトをウェブで見付けました。 そのサイトは下記URLになります。 http://www12.plala.or.jp/dokugaku/main/iterator.html このサイトの「画期的なイテレータ!!」のトレース方法を教えて下さい。 文章を読んだだけでは理解することが出来ませんでした。 出来れば分かり易く解説して頂けると幸いです。 お手数お掛けしますが、ご存知の方おられましたら、ご教授お願いします。 以上、よろしくお願い致します。

  • C言語について大変初歩的なことなのですが…

    先日C言語でのプログラミングを勉強し始めようと思いたち、 「世界一わかりやすいCプログラミングの授業」という本を買ったのですが、 書いてあった、 #include <stdio.h> main() { printf("hello,world\n"); } というプログラムを作ったのですが、エラーが起きました。 そこで「C言語入門」と検索し調べたサイトでは、 mainの前にintと入っていたのでそうしてみたところエラーがおきませんでした。 本が間違っているとは思えないのですが、これはどういう事でしょうか、教えてください。 まだなんの知識もないのでお手数ですがそこを考慮していただくとありがたいです。 

  • C言語について。

    C言語プログラマとしては、スタートアップコードは・・・ ・自分が書いたプログラムを、直接動かすために必要なライブラリ ・それはコンパイル後、リンカによって追加されるライブラリこれは、 どういう意味でしょうか?分かりやすく教えていただけると幸いです。すみません。で、 以下のかぶくんまんさんの回答です。 https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q11247611941 で、 C言語におけるプログラミングとは「main関数を書くこと」に他ならない。なぜ「main関数を書く」ことがC言語におけるプログラミングに他ならないのかと言えば、それは偏に「C言語のコンパイラはmain関数を呼び出すプログラムを生成するから」です。それがmain関数を求めるので結果的にmain関数がリンクされ、そしてmain関数が求めるままに他の関数もリンクされていくわけです。 で、その「main関数を呼び出すプログラム」こそが、C言語における「スタートアップコード」。 という回答で、main関数以降は、プログラマが書くのですよね?プログラマが関数をリンクさせる様なプログラムを書くということでしょうか?教えていただけると幸いです。すみません。 という所が分かりません。教えていただけると幸いです。すみません。以下のURL https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q12247932542

  • C言語をおぼえたい!

    C言語を学びたいと思っているんですが超初心者でもわかるような解説や説明が書いてあるサイト知りませんか?知ってたら教えて下さい ちなみにこれを学んでゲームなんかを作ろうと思っています現時点では C言語について全くわかってないので1から学びたいです

  • c言語 マクロの資料について

    c言語 マクロの資料について 現在、私は、c言語を勉強している処ですが、マクロがなかなか理解できないので困っているところです、マクロの説明しているwebサイトのURLを教えて頂きた。よろしくお願いします。

  • C言語の&に関する質問

    C言語で if (x == 0.0) (いろいろな計算) return x < 0.0 && (n & 1) ? -ans : ans; というプログラムがあるのですが、 最後のreturnのところで x がゼロ以下で且つ、n &1の場合には -ansを返し、そうでない場合にはansを返すとあるのですが、 n&1というのはどういう意味なのでしょうか? C言語で&と言えば、 http://www9.plala.or.jp/sgwr-t/c/sec14.html のページにあるように、ビットごとの AND演算子ですが、 この場合にはどういう意味で使われているのでしょうか?

  • C言語を学ぶ上での一番良いサイト

    最近、C言語を学び始めたのですが、 C言語について解説してあるサイトが多すぎて、 どれが一番よいのかわかりません。 制御文ぐらいまで習いましたが、 私が気に入ってたサイトではそこまでしか書かれていませんでした。 どこか、C言語について解説しているところで、わかりやすいサイトを教えてください。

  • C言語 キーワードとは??

    プログラミング初心者です。 初歩的な質問ですがよろしくお願いいたします。 現在C言語入門書を読んでいるのですが、「キーワード」と言うのが理解出来ません。 また当該入門書ではキーワードについて 「キーワードとは C 言語が仕様レベルで予約済みの名前のことで、前回のプログラムで紹介した return などはキーワードに属します。」と記載されていいますが理解出来ません。 初心者ですので、例え話なども用い解説してくれれば幸いです。 よろしくお願いいたします。

  • c言語を始めたい

    c言語を覚えてみたいと思っているのですが、フリーソフトでそろられるものを教えて下さい(いろいろあってどれがいいのかわかりません)。あと文法の一覧や解説が乗っているサイトも教えていただければ嬉しいです。