プログラミング

スポンサーリンク
プログラミング

DXライブラリをMinGW64で動かしたよーって話 ~ゲーム作りの基礎~

MinGW64でDXライブラリを動かすときにちょっと詰まったところがあったので、その解決方法なんかのメモしときます。DXライブラリはVisualStudioでの使用を前提としているので、MinGWで使おうとすると資料がちょっと少なかったりす...
プログラミング

正規分布に従う乱数の作成方法

今回は2本のトピックをまとめております。1つは、正規分布に従う乱数はこんな数式で作れまっせって内容の論文があったよーっていう論文の紹介です。もう1つは、前に中心極限定理について触れたことがあったんですが、それを利用すれば足し算と割り算だけで...
プログラミング

ファイル入出力を扱えてめちゃくちゃ嬉しくなってたよーって話

Visual C++をこの間まで使っておりました。VC++はmakefileを書かなくてもよかったり、自動で関数の名前チェックが入ったりして、結構便利なものでした。ただ、起動に時間がかかったり、プロジェクトのファイルサイズが大きくなったりと...
プログラミング

ATOMっていうテキストエディタを使い始めたよって話

最近まで、C++のソースファイルもヘッダーファイルも、ただのメモ書きみたいなテキストファイルも全部Mery(ちょっと機能が追加されたメモ帳みたいな)というテキストエディタを使って編集していたのです。僕が作るのは小さいプログラムがほとんどなん...
プログラミング

ベイズ論を実装してみたよーって話

/****************************************************************** 関西人か関東人かをベイズ論で判別しようというプログラムです** 相手が関西弁を話したか否かで、相手が関西人である確率が変わります**** 極めて簡易で適当な判別プログラムなので、あまりいじめてあげないでください*****************************************************************/#include #include using namespace std;double BayesianUpdate(double, double, double);		// ベイズ更新関数(事前確率, AでかつAが起こる確率, BでかつAが起こる確率)int main(){	int result;	double PrimaryProbability = 0.5;		// 現象を確認する前の事前確率(理由不十分の原理により、0.5に設定)	double WestAccent_west = 0.95;			// 関西人でかつ関西弁を話す確率	double WestAccent_east = 0.02;			// 関東人でかつ関西弁を話す確率	double CurrrentP, PostP;	CurrrentP = PrimaryProbability;	while (1)	{		cout << "現在、相手が関西人である確率 : " << CurrrentP << endl;		cout << endl;		cout << "関西弁を話したか?(No : 0 | Yes : 1 | end : -1)---";		cin >> result;		cout << endl;		if (result == -1) {			break;		}		else if (result == 0) {			PostP = BayesianUpdate(CurrrentP, 1 - WestAccent_west, 1 - WestAccent_east);		}		else {			PostP = BayesianUpdate(CurrrentP, WestAccent_west, WestAccent_east);		}		CurrrentP = PostP;	}	return 0;}double BayesianUpdate(double Primary, double Conditional1, double Conditional2){	double Probability1, Probability2;	Probability1 = Primary * Conditional1;	Probability2 = (1 - Primary) * Conditional2;	return Probability1 / (Probability1 + Probability2);}
スポンサーリンク