ゲーム製作集会改めクリエイター集会。
毎週金曜に集まりゲーム製作会議を行い、ゲーム内容の向上、個人の意欲の向上を図る。
又、集団でパソコン関連の活動を行うことで、サークル活動の活性化、集団意識の向上を図る。
現在会の内容を調整中。
他の活動と違い参加者にはある程度物事を強制する場合がある。
それぞれがそれぞれを規制し合い、安定した定期的活動を行う為である。
具体的な内容としては、ゲームの内容を考える、分からん所を聞く、ソースを見せ合い改善する、素材の製作を依頼する、等。
プログラミング未経験者には課題を与え、ある程度ゲームを作れるレベルになるまでサポートする。
ゲームを作りたい、なんて需要が多いので実施を決意する。
事細かに内容を決めたのは、gdgd防止のため。
参加する方は以下の規約を守って頂きます。
規約は必要に応じて増えたり減ったりするかもです。
参加者全員
会長・副会長
課題製作者
gdgd防止のためにガイドラインを設けることにする。
基本はこれに沿って会を行う。
「かいしのあいさつ」と「しゅうりょうのあいさつ」をしっかりと行いメリハリをつける事。
金曜午後3時に開始とする。
以上の活動内容に追加すべき内容、問題点がある場合、会長・副会長は活動内容の変更を考える事。
参加者はここに役割、製作物、名前を書くこと。
参加の意思がある者は自由に書き加えてよい。
注:参加出来ない場合は会長、もしくは副会長に連絡する事。
副会長はそのうち決める。複数人いた方がいいと思ってる。
役割 | 製作 | 名前 |
会長・課題担当 | 合同ゲーム製作プログラマー | MARISHI |
副会長・課題担当 | 個人ゲーム | ユウメ |
課題担当 | 個人ゲーム | おかゆ |
課題担当 | 個人ゲーム | KOUJI |
一般 | 合同ゲーム製作ドット絵 | カーくん(遊戯王) |
一般 | 合同ゲーム製作音楽 | A. |
プログラム未経験者の方に、ゲームを製作出来るレベルになるまで課題を提出したいと思います。
言語は問わない事にしておきますが、2回生はCかC++しか対応出来ません。ごめんなさい。
模範解答は用意します。こちらもなるべく綺麗に書く様には心がけます。心がけます。
が、こちらも実力不足な面は多々多々あります事を先にご了承くださいませ・・・
開発環境もネット環境も無い方の為に、VisualStudio2008ExpressEdition?をDVDに焼いて一部の方にお渡ししました。
無い方同士で連絡し、貸し借りしてインストールしてください。
連絡できねーよー、連絡面倒だよー、人見知り激しくて連絡したくねーよー、なんて人は連絡していただければDVDに焼いて渡します。
とりあえず部室で考えた問題。
この時期にいきなりこれを1週間で、っつーのもシンドイし、
つーかそもそもまだ入部とか確定してないじゃん、
っつー話なのでまぁとりあえずやりたい人だけ気楽に期限気にせずやってみてね〜な問題。
例:
(出力)
1:名前 2:HN 3:趣味 4:BWH
(入力)
2
(出力)
AGOHIGE+
何か分からない点があればどうぞ。
図形の種類(正方形=1、長方形=2、円=3)を入力する。
図形の種類ごとに面積を求める関数を実行する。面積の表示はメイン関数で行う。
例
Square:1 PerfectSquare:2 Circle:3 入力:1 正方形の辺の長さ:3.3 面積:10.89
考え方
(1)図形の種類(shurui)を入力する。
(2)種類ごとに関数を実行し、面積(menseki)に値を返す。
?種類が1(正方形)のとき正方形の面積を求める関数(seihoukei)を実行する。
?種類が2(長方形)のとき長方形の面積を求める関数(chouhoukei)を実行する。
?種類が3(円)のとき円の面積を求める関数(en)を実行する。
(3)正方形の面積を求める関数(seihoukei)
?一辺の長さ(hen)を入力する。
?答え(kotae)=一辺の長さ×一辺の長さ
?答えを返す。「return (kotae)」
(4)長方形の面積を求める関数(chouhoukei)
?縦の長さ(tate)を入力する。
?横の長さ(yoko)を入力する。
?答え=縦の長さ×横の長さ
?答えを返す。
(5)円の面積を求める関数(en)
?半径(hankei)を入力する。
?答え=3.141592×半径×半径
?答えを返す。
(6)(main関数にて)面積を表示する。
※mainから各関数への引数はない(void)とする。
問題は以下のサイトから転載しました。
http://www.geocities.jp/kenji_y0328/
段数をmain関数内で入力する。
段数を引数に関数を実行し、関数内で段数ぶん階段を表示する。
例
階段を何段のぼるん? -->5
* ** *** **** *****
プログラムの流れ。
1.main関数内で段数を入力する。
2.段数を引数にとり、階段表示関数を実行する。
3.関数内で階段を表示する。
+α
暇だったらこんなんとか作ってみるとおもしろいんじゃね?
っていうのとかアイディアとか。
***** **** *** ** * ** *** **** *****
とか、
何の階段に登りますか? -->大人 何段上りますか? -->4 大人 大人大人 大人大人大人 大人大人大人大人
とか。
急に2次元配列。かなり無茶振り。反省。
急に作ろうとせずに、参考書を読んでもっとシンプルな問題を解いてから手をつけることをお勧めします。
char型の2次元配列に*、_を代入してループ表示。
「35」という文字を*と_で表現しなさい。(ほかに見やすい半角文字があったらそれ使ってね^^;
例:
***_*** __*_*__ ***_*** __*___* ***_***
ヒント
配列の初期化をうまく2次元でやればそのままです。
あとはforの中にforですね。
今までのまとめ問題みたいなの。
問題
0が入力されるまで整数を入力させ、その値を配列に格納します。(最後に入力された0を含む)
その配列と要素数を引数に取り、配列に含まれている整数の最大値を返す関数を作ります。
返された最大値をディスプレイに出力しなさい。
例
2 4 8 2 0 max->8
手順
main関数内
GetMax?関数(int型の配列を引数にとる)
ヒント:
配列を引数にとるGetMax?関数の宣言の仕方は
int GetMax( int x[] );
GetMax?関数にyという名の配列を渡すには
GetMax( y );
です。
初心者キラーポインタの登場です。
いきなり難しい問題もなんなので、改造から始めてもらいます。
ループや配列の扱いの部分をちょこっとポインタに変えるだけなのでそんなに難しくないです。
問題1
第5回目の問題をポインタ仕様に改造しなさい。
例
省略
ヒント
int x[5];
int *ptr = x;
kを添え字とすると、
x[k] を *(ptr + k) で置き換えたり
for(k = 0 ; k < 5 ; k++) x[k] += 10
を
for(k = 0 ; k < 5 ; k++) *(ptr++) += 10
などと置き換えることが出来ます。
こんなことして何になるんだ?とか言わないでください。
そりゃ確かに何にもなりませんが(オイ
ポインタがどういうものかに慣れる為の問題です。
この他にも書き換えられそうなところがあれば積極的に変えてみてください
ただし、定義してない領域を参照する
(例えば上のヒントであればk == 5で*(ptr++)が実行されるなど)
と色々と大変なことになることもありますので十分注意してくださいね。
「こんなのやったらいいんじゃね?」「こうしたらgdgdにならないと思うよ!」「マリシきゅんかっこいい」
等ご意見がありましたらどうぞ。
formula (2008-06-07 (土) 04:30:02)
「標準ライブラリを使って〜の機能を作りなさい」みたいなのも標準ライブラリの勉強になっていいかも。