はじめに この記事は、Visual Studio初心者向け講座の一環で書かれた記事である。サイコロの代わりになる乱数生成ソフトが作れるようになる。 目次へ:Visual Studioでソフトを作ってみよう(初心者向け) 手順 Visual Studioを立ち上げる(パソコンによって30秒近くかかる) その後、左上の「ファイル」→「新規作成」→「プロジェクト」をクリック。 C#でWindows用のソフトを作りたい場合は、「Visual C#」を押して、「Windowsフォームアプリケーション」を選択。 ファイルの名前と保存する場所を決める。 ファイルの名前は、後から変えるのは、非常に骨が折れる。あんまり適当な名前をつけると後悔する。 ここでは、名前を「Dices」(ダイスの複数形)とする。... 続きを読む
パソコン
... 続きを読む
~Webサイトを自分で作ってみませんか?~
Webサイトを運営するにはサーバーが必須です。
このサイトは、エックスサーバー のサーバーを使用しています。
エックスサーバーは無料で10日間お試しができます。
Visual Studioをダウンロードする手順
Visual Studioとは Visual Studio は、平たく言えば、プログラミングが簡単にできるツール。 ちょっとした文法のミスをしても、プログラムを書いている途中で警告をしてくれるので、便利。初心者に優しい設計。 Microsoftが提供しているので、安心感がある。 しいて欠点を挙げるとすれば、ソフトの立ち上がりが遅いことかな? Visual Studio Communityであれば、無償で使用することができる。 インストールの仕方 Visual Studioのインストールは特に難しい点はなかったはず。 ただし以下の点に注意 想像以上に時間がかかる(1時間近くかかった記憶がある) 想像以上に容量がある(6GB近くは最低でもある) 個人であれば、無償でVisual Studio ... 続きを読む
おおきな数字に対して、素数リストを作るためのプログラム
はじめに 素数のリストを作りたい場合、エラトスネスの篩に基づいたプログラムはよく使われる。 しかし、ある程度(というか、かなり)大きな数を取り扱いたいと考えた場合、ある問題に直面する。 それは、「メモリ不足」だ。 例えば、1000までの素数リストを作る際、1~1000の数字が素数か素数でないか覚えておくための配列を宣言する必要がある。 C#であれば、以下のようなコードで、素数か素数でないか真偽を入れておく配列が宣言される。 bool[] n_list = new bool ; ※ネット上では、boolでなくintで宣言するプログラムを書いている人もいるが、メモリ的には、真偽の2パターンしか入らないboolの方がメモリの観点で得なはず。 数字が1000までなら、問題は起きないが、これが1000... 続きを読む
R_generator(対応プラットフォーム)
R_generatorとは 素人がプログラミングの勉強がてら作った無料の乱数生成器。 Unity(本来ならゲームを作るソフト)で無理やり作成。 作成した自分が言うのもなんだが、かなりしょぼいアプリ(ソフト)。 対応プラットフォーム アプリ(Androidのみ) ※アイコンをクリックすると、Google Playでの紹介ページに飛ぶ。 アプリを開くと、以下のような感じ 一応、英語に対応している。 日本語のページ(Google Play)→ https://play.google.com/store/apps/details?id=com.kaen.R_generator_Free&hl=ja 英語のページ(Google Play)→ https://play.google.com... 続きを読む
Web上で乱数生成するソフト(無料)を作ってみた
コンテンツ 乱数を生成したい場合は、矢印の先のリンクに飛んでください →「R_generator(WebGL版)」 リンク先に飛ぶと、次のようなページに飛ぶ。 ※立ち上がるのに少し時間がかかる(2~3秒) ※ソフトが大きく表示された場合は、適宜画面を縮小してください。ブラウザにもよるかもしれないが、Ctrl+(ホイールをぐりぐり回す)で簡単に画面が縮小できる。または、右下の赤枠で囲まれば部分をクリックしてフルスクリーンにしてください。 仕組み Unityというソフトを使用して、乱数生成器を作成した。 乱数の生成にはUnityにデフォルトのRandom.Range()を使用。 AndroidやiOSなどのアプリを作るときについでに作ったので、インターフェイスは、スマホ用になって... 続きを読む
プログラムでエラーが起きる原因の一覧
はじめに 備忘録もかねてどのようなパターンでプログラムがエラーを吐くかメモを残しておく。 ※私が今まで使ったことのあるプログラムの環境は「MinGW」と「Visual Studio」 単純な付け忘れ 文章の最後に「;」(カンマ)を付け忘れる。 「;」(カンマ)と「:」(コロン)を間違える。 「{}」(かっこ)がきちんと閉じていない。 ※「{」と「}」の数が同じでない ひらがなモードで空白(space)の挿入。 ※Ctrl+Fなどでプログラムの中に、余計な空白がないか検索できる ※「Visual Studio」には、インテリセンス機能がついているので、赤線で警告してくれるからすぐに気づける。 配列のミス 配列は非常にミスをしやすい部分である。 コンパイルがうまくいったのに、実行しよ... 続きを読む
儲かる賭け方が存在すると信じる人がなぜいるか?
はじめに 儲かる賭け方が存在するとどこかで信じている人がいる。 特に、マーチンゲール法(負けたら2倍の額を賭ける手法)は、見た目のトリックに騙される人が多い。 マーチンゲール法とは 負けたら賭ける金額を2倍にする手法。つまり賭ける金額を1,2,4,8,16……と増やしていく。 例えば、5連敗した後、勝利した場合。 負けた損失は、1+2+4+8+16で合計-31 勝利して得た利益は、32 合計すると+1の利益が出る。 このようにマーチンゲール法は、1度勝てば、いままでの損失をチャラにできる上に利益が得られる。 このことから、マーチンゲール法を必勝法と勘違いする人がいる。 たしかに、資金が無限に存在していれば、マーチンゲール法で利益をあげることができる。 だが、実際には有限の資金しかないので、... 続きを読む
ギャンブルの賭け方の種類をまとめてみた
はじめに この世には様々な賭け方が存在する。 この記事では、ギャンブルなど使われる賭け方の簡単な概要をまとめておく。 リンク先には、より詳しい説明と、私が行ったシミュレーション結果を載せている。 具体的には以下の賭け方を紹介する マーチンゲール法 グランマーチンゲール法 パーレー法(アンチマーチンゲール法) グランパーレー法 10%投資法 ダランベール法(ピラミッド法) 逆ダランベール法 ココモ法 モンテカルロ法 2in1法 グッドマン法(1235法) バーネット法(1326法) ウィナーズ投資法 イーストコーストプログレッション法 31システム マーチンゲール法 負けたら賭ける金額を2倍にする手法。つまり賭ける金額を1,2,4,8,16……と増やしていく。 勝ったら1に戻す。 どんなに負け... 続きを読む
エラトステネスの篩の素数判定プログラム(c#)
はじめに 素数のリストを可能な限り早く作ってくれるプログラムを作りたいと思って、最初はいくつか作って実行スピードを調べようと思った。 だが、いくつか作った結果、実行するタイミングで結構結果が変わる。 自分でもどのパターンが最速かよくわかっていない。 オーダーで2倍も違うものはないので、どれを使ってもいいと思う。 ※言語はC#。作った環境はVisual Studio 2015 。コンソールアプリケーションで作っている ※追記:バグが残っている可能性がある。 1:単純なエラトステネスのふるい 何も考えず、愚直にエラトステネスのふるいを実装した場合。 配列をラベル付けする数字が0から始まるのに対して、配列の中の数字は1から始まっていると考えている。その食い違いに解消のためにi+... 続きを読む
賭けシミュレーションのコードの実行の仕方
はじめに ネット上では、様々なプログラムのコードが転がっている。だが、そのままコピペしてもうまく動かないというのはよくある。 例えば、言語の違い。 C++で書かれているプログラムをC言語でコンパイルしようとても動かなかったりする。(C++とCは割と共通している部分があるので、すんなり通ることもあるが……) それ以上に、動かない原因となっているのは、コンパイラの違いだろう。つまり、自分でコードをコンパイルしようとしている環境と、サイト上にあるコードがコンパイルされた環境の違いだ。 この記事では、このサイトの賭けシミュレーションに載せているプログラムを動かしてかたについて述べておく。 ※目次用の記事:ギャンブルの賭け方の種類をまとめてみた マーチンゲール法(2倍賭け)の破綻までのシミュレーシ... 続きを読む
~Webサイトを自分で作ってみませんか?~
Webサイトを運営するにはサーバーが必須です。
このサイトは、エックスサーバー のサーバーを使用しています。
エックスサーバーは無料で10日間お試しができます。