プログラミングの最近のブログ記事

Google Mapsの地図をC#で使いたかったので、Google Mapsの仕組みを調べてみました。

Google Maps

Google Mapsは、JavaScriptとCSS(Ajax)を有効活用したウェブブラウザで動作するSaaS型のアプリケーションです。

このGoogle Mapsでは、ウェブサイト向けにGoogle Maps APIが提供されています。しかし、プログラムでは、うまく使用できず、もし使うとするなら、Static Map APIくらいしか利用できません。Static Map APIでは、Google側で自動的に加工され、著作権表示、スケール表示が自動的に付加され、邪魔になります。

そこで、Google Mapsが使用している生のデータを利用することにして、ダイレクトにGoogle Mapsのデータを扱うことにしました。

この前、良い物を見つけたのでそれに関する記事です。

良い物って言うのは、yacclexです。コンパイラコンパイラと呼ばれていて、コンパイラを作るための支援ツールです。

簡単に言えば、コンパイラコンパイラは、電卓・設定ファイル(iniなど)の解析などのプログラム作成に使うと便利になるツールのことです。

コンパイラコンパイラは、それぞれ専用の言語を使って記述して、コンパイラコンパイラでコンパイルします。コンパイルをすると、C言語のソースが得られます。

便利ですね~。

次に、もう少し詳しく書きます。

3月1日に公開したFlowSimulatorですが、Vectorに登録してみました。大手サイトに登録すれば、見てくれる人も少しは多くなるんじゃないでしょうか。

と言うわけで、さっそく登録したページが公開になっています。

http://www.vector.co.jp/soft/winnt/edu/se482322.html

vectorは、手動作業で登録しているようで、登録完了までには時間がかかりました。

ソフト公開までの手順を紹介したいと思います。vectorにソフト登録する方は参考にしてください。

大学のプログラミングの課題が最近複雑になってきたので、ちょっとまとめて見たいと思います。
今回は、入力処理について見ていこうと思います。最初だけよく使うscanfの使いかたを取り上げます。

scanfの基本的な使いかたは以下のようなものですね。
int a;

scanf("%d", &a);
このコードは数値を読み取るものです。これは、まだ安全なコードですが、非常に不安定な動作になるときがあるので、それを重視して説明していきます。

これからプログラミングをしようと思っているんですが、どうしても数式を演算しないといけないということがわかっています。

これをどうするか?

プログラミング言語は、C++なので、数式は文字列です。こいつを数値に変換して、演算するという処理を書かないといけません。これが難しいんですね、ほんとに。(難しいというよりめんどくさいといった方がいいのか。)

ちょうど去年に同じコードを書いているので参考にして作ればいいと思うんですが、それはC言語で書かれており、プログラムに内蔵されています。こいつをどうにかして、DLLにまとめようと考え中です。(想定プラットフォームはWindowsなのでDLL)

で、実際に作らないといけませんかね?

すでに、こんなライブラリありませんか? C言語でchar型の文字列を数式として演算して、整数もしくは実数で返してくれるというライブラリ。精度はそんなに必要ではありません。

ライブラリがあるといろいろ楽なんですが、とりあえず自分で作ることにします。

また、逆ポーランド記法か・・

予告通り、以前から作成しているソフトウェアを公開します。

MIDI2WAVE on the Internet by TiMidity++

これは、楽器演奏ファイルであるMIDI ファイルから音声波形データに変換できます。名前の通り、インターネット上で行うことが出来ます。
それには、TiMidity++と呼ばれるフリーのシンセサイザを利用しており、高音質な音声データに変換できます。現在対応している音声データの圧縮形式は、MP3、M4A(AAC)です。

アドレスは、https://www.letstryit.net/midi2wave/ です。

※利用するには、必ず注意とサービスポリシーを読んでください。同意の上、利用してください。

※サービス特性上、MIDI ファイルを一度サーバにアップロードしなければいけません。このときに、公衆送信可能になることに注意してください。変換に使うMIDIファイルは、自由に使って良いとしている物、制作者が利用者であるという物にしてください。配布禁止とされている物は、利用を控えてください。

 ※このサービスは、膨大なサーバのリソースを消費します。負荷の少ない時間帯(深夜など)で、利用してください。

利用方法

Perl に挑戦!

| コメント(0) | トラックバック(0) |

突然ですが、昨日から Perl を勉強し始めました。

なんとなく、CGI を作ってみたいと思いまして、

やり始めて、かなりC言語っぽいなぁという点と、ああ違うなという点があったのでまとめておくことにします。こう言うのは、早くしないと忘れてしまうので、

前回こんな記事を書いた。で、この記事を書く少し前に、高校生が DreamSpark 登録対象となっていたので、その時に申し込んでいたんですが、、、

Cでeを求める

| コメント(0) | トラックバック(0) |

まず、eとは、自然対数の底のことで、ネイピア数とも言います。
数値としては、2.718281828・・・となり、循環しない小数です。

大学の授業で、少し気になったところがあったのでここにまとめてみます。

このプログラムを見てください。

#include <stdio.h>

int main(void) {
    printf("Hello World\n");
}

なんかおかしくありませんかね?

アーカイブ

カウンタ

Total
Today
Yesterday

IPv6 Ready

Powered by Movable Type 7.0