メルマガ:あゆしゃのC言語プログラミング
タイトル:あゆしゃのC言語プログラミング(Vol.400) 第8回テスト  2003/11/10


/*========================================================*/
    <<<あゆしゃのC言語プログラミング>>>
/*========================================================*/
 第400回 第8回テスト
 発行    2003年11月10日(月曜日)
 発行数   約3100

{magclick}
{magclick}
/*========================================================*/
 はじめに ( 決り文句 )
/*========================================================*/
・このメールマガジンはまぐまぐさんから発行しています。
・ジャンルは、マルチメディアのプログラム、C言語です。
・このメールマガジンは、横60文字で作成しています。
 また、インデントはすべて半角スペース4つで構成しています。
・ここで扱うプログラムは、C言語と半光年以内のものです。
・登録解除は、まぐまぐさんのホームページでお願いします。
・まぐまぐさんのバックナンバー(下欄参照)を活用して下さい。
・ここは私の復習の場です。内容は約1ヶ月内外に私が勉強した
 内容になっています。最新の技術があれば、へたれもあります。
・わかりやすさを優先させる為、たまに嘘があるかもしれません。

/*========================================================*/
 ご挨拶
/*========================================================*/

 こんにちは。あゆしゃです。

 先日から、ハリーポッターの本を読み始めました。

 完全英語版です。


 ・・・1割ぐらい分かります。えっへん。


{magclick}
/*========================================================*/
 今回のお題  << 第8回テスト >>
/*========================================================*/

/*========================================================*/
第1問 行動可能範囲計算についての問題です。

 以下の関数をご覧ください。

void m( int x, int y, int p )
{
    b[ x ][ y ] = p;
    p -= l[ x ][ y ];
    if( p < 0 ) return;
    if( y > MIN && b[ x ][ y - 1 ] < p ) m( x, y - 1, p );
    if( y < MAX && b[ x ][ y + 1 ] < p ) m( x, y + 1, p );
    if( x > MIN && b[ x - 1 ][ y ] < p ) m( x - 1, y, p );
    if( x < MAX && b[ x + 1 ][ y ] < p ) m( x + 1, y, p );
}

 ご存知、シミュレーションゲームにて、ユニットの行動可能範囲
を計算する関数です。

 b は行動可能範囲と最短経路を記録する2次元配列です。
 l は行動に際しての進入ロスを示す2次元配列です。
 MIN とMAX は座標が取りうる最小と最大をあらわすマクロです。

 さて、ここで問題です。

 この関数は、方眼状のマップについての行動可能範囲を計算する
ものです。

 しかし、「機動戦士ガンダムギレンの野望」でのマップは六角形
であり、この関数を直接使うことはできません。

 そこで、この関数を六角形状のマップでも使えるように改造して
ください。


/*========================================================*/
第2問 XP(エクストリームプログラミング)について。

 以下の5つの文章で、XPを導入する目的として正しいものに○、
正しくないものに×をつけてください。

1.開発費を高くする

2.生産性を高める

3.保守性を高める

4.インド人に対抗する

5.開発作業を難しくする


/*========================================================*/
 さいごに
/*========================================================*/

 数字は人を納得させようとするそうで。。。

{magclick}
/*========================================================*/
 次回予告
/*========================================================*/

 次回は11月12日(水曜日)に、第401回を送ります。
 お題は「第8回テスト 回答」

 お楽しみに!

/*========================================================*/
 最後の決り文句
/*========================================================*/
 このメールマガジンは、まぐまぐさんから発行しています。
 このメールマガジンを解除したい場合は、まぐまぐさんをご利用
ください。このメルマガのまぐまぐアイディーは最後にあります。
 このメールマガジンには広告が挿入されます。
 このメールマガジンの内容に文面の引用はありません。
 めーらっくすの場合はめーらっくすの利用方に従ってください。
 このメールマガジンの内容は、転用、流用、宣伝、リンク、
メガネがセロテープなのは分かった! なんて大歓迎です。

{magclick}
/*========================================================*/
 
/*========================================================*/

発行者 あゆしゃ

まぐまぐアイディー
0000020674

まぐまぐバックナンバー
http://jazz.tegami.com/backnumber/frame.cgi?id=0000020674

あゆしゃの世界
http://ayusya.hp.infoseek.co.jp/

登録と解除
http://www.mag2.com/m/0000020674.htm

ご意見・ご感想・ご質問メール
mailto:ayusya@flamenco.plala.or.jp

めーらっくす <<過去ログがタイトル別になっています>>
http://www.mailux.com/mm_dsp.php?mm_id=MM3E1AEE285AB4F

ブラウザの閉じるボタンで閉じてください。