2010年8月12日木曜日

最大値・最小値

2つの数の最大値,最小値を求めようとしたときどうしますか?
例えば,2つの数値をx,yとおいたときにif文または,三項演算子で求めることが出来ますが,どちらとも演算子(大なり,小なり)を間違えると重大なバグに繋がるでしょう.関数にすると,場合によりますが,余計にプログラムのサイズが大きくなったり,実行速度が遅くなります.
そこで便利なのがマクロです.defineです!
#define MAX2(x,y) ((x) > (y) ? (x) : (y))
#define MIN2(x,y) ((x) < (y) ? (x) : (y))
これなら何を得ようとしているのか分かりやすく,実行速度も変わらないので便利です.

余談
夏休み始まって1週間が過ぎようとしているのに,全く課題に手をつけていません.(勉強はしているけど課題はやってない)
らいかさんのスクリプトを見て面白いなーと思ったら,文発までそろそろ1ヶ月を切ろうとしてハッとしました.

0 件のコメント:

コメントを投稿