実験プログラマー

さあ、2学期の実験がついに終わりました!!! やった! あとは任意課題なんでゆっくりとやっていきます!!! 課題3-2はSMF->UNIの変換プログラムだったけど、恐らく3-1よりは簡単、、、いや、3-1でだいぶ慣れたか … “実験プログラマー” の続きを読む

さあ、2学期の実験がついに終わりました!!! やった!
あとは任意課題なんでゆっくりとやっていきます!!!

課題3-2はSMF->UNIの変換プログラムだったけど、恐らく3-1よりは簡単、、、いや、3-1でだいぶ慣れたからかな? そこまで複雑なアルゴリズムでもないし。
テストとして、ショパンのエチュード・ハ短調10-12番、いわゆる「革命」の冒頭部分を切り出して、これをsmf2uni.exeにぶち込んでみる。 するとかなり巨大なuniファイルが出来あがった… これをUNIPLAYERという配布された教材のプレーヤにぶっこんでみると、、すごい勢いで革命の冒頭!!! うおーーー…こ、こりゃすげぇ
UNIPLAYERもなかなかやるなぁ。。。

ショパンのエチュードが再生できるんだからたぶん正確なんでしょうね!(おい)

課題3-1と課題3-2あわせてどのくらいの行数になったんかなーと計ってみると、約1000行。 なんだか辛さの割にはずいぶんと小ぢんまりとしたプログラムになったっぽい。 いや、これを本来ならCで書けというのだろうから、1.4〜1.5倍ぐらいになるはず、、、嫌だ書きたくない(T_T) プログラムは完!

全にオブジェクト指向!! だってmain関数は20行ちょっとだもん!!!!!!!

int main(int argc,char *argv[])
{
CUniData unidata;
CSmfData smfdata;
CConverter converter;
int ret_code;

// ファイルからSMFデータのロード
ret_code = smfdata.LoadFromFile(argv[1]);
if(ret_code == -1) return 0;

// 変換
ret_code = converter.Smf2Uni(smfdata,unidata);

// UNIデータとしてファイルへ保存
ret_code = unidata.SaveToFile(argv[2]);
if(ret_code == -1) return 0;

return 1;
}

いけいけC++!! 万歳!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください