"時間を取得する"の単元で
"時間を取得する"の単元で
時間を取得するの単元を実行しているのですが、いまいちプログラムの意味がわかりません。
以下のプログラムなのですがわからない点を挙げたいとおもいます。
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){
ChangeWindowMode( TRUE ) ; //ウィンドウモードにする。
if( DxLib_Init() == -1 ) return -1; // DXライブラリ初期化処理 エラーが起きたら終了
int i,a=0,time,White;
White = GetColor( 255 , 255 , 255 ) ; // 白色の値を取得
time = GetNowCount() ; // 現在経過時間を得る
DrawFormatString(0, 0, White , "立ち上がってから%dミリ秒", time);//文字列表示
for(i=0;i<100000;i++) //10万回a++;を実行
a++;
time = GetNowCount() - time; //現在の経過時間から先ほどの経過時間を引く
DrawFormatString(0,100, White , "計算時間%dミリ秒" , time);//文字列表示
WaitKey() ; // キーの入力待ち(『WaitKey』を使用)
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
**質問**
for(i=0;i<100000;i++) //10万回a++;を実行
a++;
この処理でなぜ10万回a++を実行できるのでしょうか
a++などはC言語でインクリメントなどという単元があった気がしますが関係あるのでしょうか。
以下のプログラムなのですがわからない点を挙げたいとおもいます。
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){
ChangeWindowMode( TRUE ) ; //ウィンドウモードにする。
if( DxLib_Init() == -1 ) return -1; // DXライブラリ初期化処理 エラーが起きたら終了
int i,a=0,time,White;
White = GetColor( 255 , 255 , 255 ) ; // 白色の値を取得
time = GetNowCount() ; // 現在経過時間を得る
DrawFormatString(0, 0, White , "立ち上がってから%dミリ秒", time);//文字列表示
for(i=0;i<100000;i++) //10万回a++;を実行
a++;
time = GetNowCount() - time; //現在の経過時間から先ほどの経過時間を引く
DrawFormatString(0,100, White , "計算時間%dミリ秒" , time);//文字列表示
WaitKey() ; // キーの入力待ち(『WaitKey』を使用)
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
**質問**
for(i=0;i<100000;i++) //10万回a++;を実行
a++;
この処理でなぜ10万回a++を実行できるのでしょうか
a++などはC言語でインクリメントなどという単元があった気がしますが関係あるのでしょうか。
Re:
> for(i=0;i<100000;i++) //10万回a++;を実行
> a++;
> この処理でなぜ10万回a++を実行できるのでしょうか
質問の意図が何通りか考えられます。
1. コードの意味が理解できない。
2. aがオーバーフローして未定義の動作を引き起こすのでは?
3. 最適化によって a += 99999 になってしまうのでは?
追記:
すみません間違いました。
× 99999
○ 100000
1.だとすると、入門書で勉強してください。
2.だとすると、想定している処理系のint型が32ビットなので問題ありません。
3.だとすると、これは元のコードのバグです。iまたはaをvolatile修飾することで解決します。
> a++;
> この処理でなぜ10万回a++を実行できるのでしょうか
質問の意図が何通りか考えられます。
1. コードの意味が理解できない。
2. aがオーバーフローして未定義の動作を引き起こすのでは?
3. 最適化によって a += 99999 になってしまうのでは?
追記:
すみません間違いました。
× 99999
○ 100000
1.だとすると、入門書で勉強してください。
2.だとすると、想定している処理系のint型が32ビットなので問題ありません。
3.だとすると、これは元のコードのバグです。iまたはaをvolatile修飾することで解決します。
Re:
>>DXライブラリを習得する前に、C言語を習得する方が先ではないかと
サイトのTOPにC言語暦1ヶ月? 十分 とあったので僕でもいけるかなとおもいました。
>>せめて疑問に思った時点で、「forについても調べよう」と思えるようになってほしいな
すみません、調べようとおもうまでの思考も回らないほどさっぱりでした
>>ソースを添付する場合はpreタグを使用する掲示板の規約も守ってほしい
すみません、規約を見直してきます
>>10万回インクリメントすることに疑問をもつことに意味はあるのですか
すべての単元においてソースを理解するまでやっているので後々困らないように質問しようとおもいました。
>>質問の意図が何通りか考えられます。
>>1. コードの意味が理解できない。
>>2. aがオーバーフローして未定義の動作を引き起こすのでは?
>>3. 最適化によって a += 99999 になってしまうのでは?
1です
なんかすごい叩かれた気分ですが、結局僕はどうすればいいのでしょうか
サイトのTOPにC暦1ヶ月で十分とあったので僕は勉強して、わからない点があったから質問して、それに対してC言語を習得するべきとか言われましても…
僕は"for文"を勉強すればいいのですね?
サイトのTOPにC言語暦1ヶ月? 十分 とあったので僕でもいけるかなとおもいました。
>>せめて疑問に思った時点で、「forについても調べよう」と思えるようになってほしいな
すみません、調べようとおもうまでの思考も回らないほどさっぱりでした
>>ソースを添付する場合はpreタグを使用する掲示板の規約も守ってほしい
すみません、規約を見直してきます
>>10万回インクリメントすることに疑問をもつことに意味はあるのですか
すべての単元においてソースを理解するまでやっているので後々困らないように質問しようとおもいました。
>>質問の意図が何通りか考えられます。
>>1. コードの意味が理解できない。
>>2. aがオーバーフローして未定義の動作を引き起こすのでは?
>>3. 最適化によって a += 99999 になってしまうのでは?
1です
なんかすごい叩かれた気分ですが、結局僕はどうすればいいのでしょうか
サイトのTOPにC暦1ヶ月で十分とあったので僕は勉強して、わからない点があったから質問して、それに対してC言語を習得するべきとか言われましても…
僕は"for文"を勉強すればいいのですね?
Re:
> なんかすごい叩かれた気分ですが、結局僕はどうすればいいのでしょうか
まったく叩かれていないと思いますが...
これで「すごい叩かれた気分」といわれても、被害妄想としかいえません。
> サイトのTOPにC暦1ヶ月で十分とあったので僕は勉強して、わからない点があったから質問して、
単に1ヶ月が経過したというだけでは何も身に付きません。
1ヶ月もあれば、それなりの入門書を1冊以上読破し、そこに書かれていたことを実際に試してみるぐらいのことはできるはずです。
その状態であれば、for文を見て何をやっているのか分からないということはないでしょうし、少し怪しいようなら入門書を読み返せば解決するはずですね。
> それに対してC言語を習得するべきとか言われましても…
程度は低くても、先ほど書いたぐらいはC言語を習得してください。
まだそこに達していないなら、これから必要なことを習得するようにしてください。
ところで、C言語暦ではなく、C言語[color=red>歴[/color]です。
まったく叩かれていないと思いますが...
これで「すごい叩かれた気分」といわれても、被害妄想としかいえません。
> サイトのTOPにC暦1ヶ月で十分とあったので僕は勉強して、わからない点があったから質問して、
単に1ヶ月が経過したというだけでは何も身に付きません。
1ヶ月もあれば、それなりの入門書を1冊以上読破し、そこに書かれていたことを実際に試してみるぐらいのことはできるはずです。
その状態であれば、for文を見て何をやっているのか分からないということはないでしょうし、少し怪しいようなら入門書を読み返せば解決するはずですね。
> それに対してC言語を習得するべきとか言われましても…
程度は低くても、先ほど書いたぐらいはC言語を習得してください。
まだそこに達していないなら、これから必要なことを習得するようにしてください。
ところで、C言語暦ではなく、C言語[color=red>歴[/color]です。
Re:
> 僕は"for文"を勉強すればいいのですね?
最終的に何をやりたいのか分かりませんが、
ソースコードを理解したいのなら、とりあえずはその通りです。
ひとそれぞれ、元になる知識も勉強の仕方も理解力も熱意も違います。
「一ヶ月間C言語を勉強した」と自称する人が、
皆同じレベルまでC言語を習得しているわけではありません。
「C歴一ヶ月」というのは、管理人さんが考えた目安でしょう。
forを理解できない、調べようとおもうまでの思考も回らない、
というのは、その目安から外れていたのです。
しかし、管理人さんは救済策を用意してくれていて、それがこの掲示板です。
分からないことがあれば質問すればよいのです。
叩かれた気分になってしまったようですが、(私のも含め)今回の回答は
それぞれの回答者なりに好意的なものだと思いますが。
掲示板でfor文についての説明することも可能ですが、
丁寧な説明のある本やサイトが山ほどあるのに、
そこを読まないのはもったいなくないですか?
最終的に何をやりたいのか分かりませんが、
ソースコードを理解したいのなら、とりあえずはその通りです。
ひとそれぞれ、元になる知識も勉強の仕方も理解力も熱意も違います。
「一ヶ月間C言語を勉強した」と自称する人が、
皆同じレベルまでC言語を習得しているわけではありません。
「C歴一ヶ月」というのは、管理人さんが考えた目安でしょう。
forを理解できない、調べようとおもうまでの思考も回らない、
というのは、その目安から外れていたのです。
しかし、管理人さんは救済策を用意してくれていて、それがこの掲示板です。
分からないことがあれば質問すればよいのです。
叩かれた気分になってしまったようですが、(私のも含め)今回の回答は
それぞれの回答者なりに好意的なものだと思いますが。
掲示板でfor文についての説明することも可能ですが、
丁寧な説明のある本やサイトが山ほどあるのに、
そこを読まないのはもったいなくないですか?
Re:
どうも被害妄想が激しく気分の起伏が激しい人のようですね。
みんな好意的にアドバイスしてくれているのに
「なんかすごい叩かれた気分ですが」と返すのはとても失礼です。
こんなことなら、ブログの件もただの自分の被害妄想だろうと言われても仕方ないでしょう。
中学生だということなので、まだ常識がわからないのでしょうが、ネットではそんな事考慮してくれません。
調べられる事は調べ、
アドバイスを受けに来たのならそのアドバイスを真剣に聞き、自分の行動を改め、
その場にあった規則や規約を守って行動する
これだけは最低限行いましょう。
また、for文なんてのはC言語の基本中の基本です。
そんな状態で「1年間C言語を勉強した」なんて言えません。
1年間C言語を勉強したのと、1年間自分の机の上にC言語の本が置いてあったのは意味が違います。
ここのサンプルプログラムはC言語の基本を理解していることが前提です。
まずは参考サイトや参考書などで基本を勉強しましょう。
みんな好意的にアドバイスしてくれているのに
「なんかすごい叩かれた気分ですが」と返すのはとても失礼です。
こんなことなら、ブログの件もただの自分の被害妄想だろうと言われても仕方ないでしょう。
中学生だということなので、まだ常識がわからないのでしょうが、ネットではそんな事考慮してくれません。
調べられる事は調べ、
アドバイスを受けに来たのならそのアドバイスを真剣に聞き、自分の行動を改め、
その場にあった規則や規約を守って行動する
これだけは最低限行いましょう。
また、for文なんてのはC言語の基本中の基本です。
そんな状態で「1年間C言語を勉強した」なんて言えません。
1年間C言語を勉強したのと、1年間自分の机の上にC言語の本が置いてあったのは意味が違います。
ここのサンプルプログラムはC言語の基本を理解していることが前提です。
まずは参考サイトや参考書などで基本を勉強しましょう。
Re:
一応C言語の基本が学習できるサイトを紹介しておきます。
私の解釈ですが、このサイトの11章ぐらいまで理解しておかないと、C言語を用いて独自のプログラムが作れるレベルではないように思います。
http://www9.plala.or.jp/sgwr-t/
私の解釈ですが、このサイトの11章ぐらいまで理解しておかないと、C言語を用いて独自のプログラムが作れるレベルではないように思います。
http://www9.plala.or.jp/sgwr-t/
Re:
>>単に1ヶ月が経過したというだけでは何も身に付きません。
>>1ヶ月もあれば、それなりの入門書を1冊以上読破し、そこに書かれていたことを実際に試してみるぐらいの
>>ことはできるはずです。
>>その状態であれば、for文を見て何をやっているのか分からないということはないでしょうし、少し怪しいよう
>>なら入門書を読み返せば解決するはずですね。
学生なのでC言語のみに打ち込める環境じゃないのでそれは不可能です。
読破は可能でも実行していたらまず無理です。
>>掲示板でfor文についての説明することも可能ですが、
>>丁寧な説明のある本やサイトが山ほどあるのに、
>>そこを読まないのはもったいなくないですか?
その通りですね; 僕自身よく考えたらC言語の本を2冊も持ち合わせていましたし、しかもC++の本までありました。使わないのはもったいないのはその通りですので学校などで暇を見つけて呼んでみたいとおもいます。
>>どうも被害妄想が激しく気分の起伏が激しい人のようですね。
>>みんな好意的にアドバイスしてくれているのに
>>「なんかすごい叩かれた気分ですが」と返すのはとても失礼です。
>>こんなことなら、ブログの件もただの自分の被害妄想だろうと言われても仕方ないでしょう。
確かに僕の言動は失礼でした。すみません。かといって"どうも被害妄想が激しくて気分の机上が激しい人のようですね。"のような言い方はどうかとおもいますが。その一言も一応利用方針(ここの)には従えてないですよ。
>>一応C言語の基本が学習できるサイトを紹介しておきます。
>>私の解釈ですが、このサイトの11章ぐらいまで理解しておかないと、C言語を用いて独自のプログラムが作れ
>>るレベルではないように思います。
有難うございます。ぜひ参考にさせて頂きます。
今回はお騒がせしました。今後ともよろしくお願いします
自分が持ち合わせている本や紹介してくださった本で基礎に目を通し、ある程度理解できてからまたこちらの作業に戻りたいとおもいます。
C言語を学習した上でわからないこと等あるとおもいますのでその際はよろしくお願いします。
>>1ヶ月もあれば、それなりの入門書を1冊以上読破し、そこに書かれていたことを実際に試してみるぐらいの
>>ことはできるはずです。
>>その状態であれば、for文を見て何をやっているのか分からないということはないでしょうし、少し怪しいよう
>>なら入門書を読み返せば解決するはずですね。
学生なのでC言語のみに打ち込める環境じゃないのでそれは不可能です。
読破は可能でも実行していたらまず無理です。
>>掲示板でfor文についての説明することも可能ですが、
>>丁寧な説明のある本やサイトが山ほどあるのに、
>>そこを読まないのはもったいなくないですか?
その通りですね; 僕自身よく考えたらC言語の本を2冊も持ち合わせていましたし、しかもC++の本までありました。使わないのはもったいないのはその通りですので学校などで暇を見つけて呼んでみたいとおもいます。
>>どうも被害妄想が激しく気分の起伏が激しい人のようですね。
>>みんな好意的にアドバイスしてくれているのに
>>「なんかすごい叩かれた気分ですが」と返すのはとても失礼です。
>>こんなことなら、ブログの件もただの自分の被害妄想だろうと言われても仕方ないでしょう。
確かに僕の言動は失礼でした。すみません。かといって"どうも被害妄想が激しくて気分の机上が激しい人のようですね。"のような言い方はどうかとおもいますが。その一言も一応利用方針(ここの)には従えてないですよ。
>>一応C言語の基本が学習できるサイトを紹介しておきます。
>>私の解釈ですが、このサイトの11章ぐらいまで理解しておかないと、C言語を用いて独自のプログラムが作れ
>>るレベルではないように思います。
有難うございます。ぜひ参考にさせて頂きます。
今回はお騒がせしました。今後ともよろしくお願いします
自分が持ち合わせている本や紹介してくださった本で基礎に目を通し、ある程度理解できてからまたこちらの作業に戻りたいとおもいます。
C言語を学習した上でわからないこと等あるとおもいますのでその際はよろしくお願いします。
Re:
他の方々もおっしゃっていますが、私からも一言だけ言わせてもらいますね。
私の場合、C言語を勉強し始めたのは、高校1年後半くらいでした。
個人的な事情であったので、独学での勉強でした。
本格的に勉強をし始めたのは、大学に入ってからです。
なので、質問者様よりも少し遅めですね。
質問の方を拝見させていただいたところ、まだ基本が理解できていないと私には感じられます。
ソースの意味を知りたいだけでしたら、たいちうさんのおっしゃる通り
for文だけを勉強されれば充分です。
ですが、本気で勉強していこうという気があるのであれば、
これから先さまざまなソースを見ていくことになるでしょう。
となると、はっきり言ってfor文だけでは絶対に理解することはできません。
基本中の基本を理解できていなければ、他人の書かれたソースを読んでも無駄だと思います。
(少し大袈裟かもしれませんが)
掛け算を一切知らないのに、図形の面積を求めることなんてほぼできませんよね?
それと同じです。
C言語だと繰り返し処理、条件分岐は最低限必要な知識といえるでしょう。
他にも自作関数や構造体、ポインタ等もありますが^^;
これを聞いてさっぱりわからないよっていうのであれば、
DXライブラリの勉強をされるよりも、C言語の基礎を勉強することをお勧めします。
それなりの知識を得て、それらを使いこなすには私からすれば1か月では足らないと思いますね。
少なくとも私の場合、ポインタまである程度理解し、少しですが使えるようになるまで
1年近くかかってしまいました。(←かかりすぎかもしれませんが^^;
>>学生なのでC言語のみに打ち込める環境じゃないのでそれは不可能です。
>>読破は可能でも実行していたらまず無理です。
私も学生の身分ですが、その気になれば学校の勉強と同時並行でCの勉強を進めていくことはできますよ。
私は睡眠の時間を削ってでもC言語の勉強をしています。
というよりも、「○○なので~できません」では社会では通用しませんよ。
それともう一言だけ
Cの参考書やサイトを見ただけではプログラムは書けるようにはなりません。
数学や英語と同じように、実際に自分でプログラムを作って実行していかなければ、
確かな実力は付いてこないと思います。
いろいろと大変かもしれませんが、頑張ってくださいね^^
私の場合、C言語を勉強し始めたのは、高校1年後半くらいでした。
個人的な事情であったので、独学での勉強でした。
本格的に勉強をし始めたのは、大学に入ってからです。
なので、質問者様よりも少し遅めですね。
質問の方を拝見させていただいたところ、まだ基本が理解できていないと私には感じられます。
ソースの意味を知りたいだけでしたら、たいちうさんのおっしゃる通り
for文だけを勉強されれば充分です。
ですが、本気で勉強していこうという気があるのであれば、
これから先さまざまなソースを見ていくことになるでしょう。
となると、はっきり言ってfor文だけでは絶対に理解することはできません。
基本中の基本を理解できていなければ、他人の書かれたソースを読んでも無駄だと思います。
(少し大袈裟かもしれませんが)
掛け算を一切知らないのに、図形の面積を求めることなんてほぼできませんよね?
それと同じです。
C言語だと繰り返し処理、条件分岐は最低限必要な知識といえるでしょう。
他にも自作関数や構造体、ポインタ等もありますが^^;
これを聞いてさっぱりわからないよっていうのであれば、
DXライブラリの勉強をされるよりも、C言語の基礎を勉強することをお勧めします。
それなりの知識を得て、それらを使いこなすには私からすれば1か月では足らないと思いますね。
少なくとも私の場合、ポインタまである程度理解し、少しですが使えるようになるまで
1年近くかかってしまいました。(←かかりすぎかもしれませんが^^;
>>学生なのでC言語のみに打ち込める環境じゃないのでそれは不可能です。
>>読破は可能でも実行していたらまず無理です。
私も学生の身分ですが、その気になれば学校の勉強と同時並行でCの勉強を進めていくことはできますよ。
私は睡眠の時間を削ってでもC言語の勉強をしています。
というよりも、「○○なので~できません」では社会では通用しませんよ。
それともう一言だけ
Cの参考書やサイトを見ただけではプログラムは書けるようにはなりません。
数学や英語と同じように、実際に自分でプログラムを作って実行していかなければ、
確かな実力は付いてこないと思います。
いろいろと大変かもしれませんが、頑張ってくださいね^^
Re:
C言語何でも質問掲示板なので質問に答えます。
正直、for文を分かりやすく説明しているサイトを見たことがありません。
わたしも最初何をしているのか分かりませんでした。
苦労して理解したので説明します。(間違っていたらすみません)
とりあえず繰り返す文は④になります。
ここで、繰り返す文が1つの場合は{}が省略できるので
質問されているのはこの状態ですね。
あてはめると
①は i=0
②は i<100000
③は i++
④は a++
となります。
とりあえずこのまま②の100000の数字の回数だけ
④のa++を繰り返すと覚えてしまえばそのまま使えます。
これ以外でfor文を使うことはあまりないので仕組みを覚えてなくても
とりあえずなんとかなるのですがあえて説明します。
a++やi++は1たすということは分かりますか?
aが0のときa++を書くとaは1になります。
100000は説明が面倒なので5にさせてもらいます。
i<5はiが5より小さいかを判定します。iが5のときは含まれません。
この判定が成立していると繰り返しを実行します。
① まずiの値が0になります。(i=0)
② iは0なので5より小さいので(i<5)
④ a++が実行されます。
③ 次にi++が実行されます。iは1になります。
② iは1なので5より小さいので(i<5)
④ a++が実行されます。
③ 次にi++が実行されます。iは2になります。
② iは2なので5より小さいので(i<5)
④ a++が実行されます。
③ 次にi++が実行されます。iは3になります。
② iは3なので5より小さいので(i<5)
④ a++が実行されます。
③ 次にi++が実行されます。iは4になります。
② iは4なので5より小さいので(i<5)
④ a++が実行されます。
③ 次にi++が実行されます。iは5になります。
② iは5なので5より小さくないので(i<5)
これで終わります。
数えてください。④は5回実行されましたね。
①は1回しか実行されないことと
④③②の順番に実行されることを覚えれば
これでほぼマスターしたといってもいいでしょう。
初心者が良く間違えるのは④が実行された後に
③と②が実行されていることを忘れることです。
①と③は何も書かなくても大丈夫です。
ただし、②は書かないといつまでたっても終わらないのでダメです。
i<5についてもっと詳しく書くと
i<5が成立しているときはi<5は1になります。
成立していないときは0になります。
つまり②の部分は1か0を書けばいいわけです。
(何も書かないと1が書いてあるとみなされるようです。)
(正確には永久ではないですが)
ちなみに①と③を省略するときはwhile文というのを使うことが多いです。
こう書きます。
for文は分かりましたか?これで分らなかったら私が落ち込みます。
あとはたくさん書いてみて実践あるのみです。
正直、for文を分かりやすく説明しているサイトを見たことがありません。
わたしも最初何をしているのか分かりませんでした。
苦労して理解したので説明します。(間違っていたらすみません)
for(①; ②; ③){ ④; }基本はこのように書くのですが
とりあえず繰り返す文は④になります。
ここで、繰り返す文が1つの場合は{}が省略できるので
for(①; ②; ③) ④;と書くことができます。
質問されているのはこの状態ですね。
あてはめると
①は i=0
②は i<100000
③は i++
④は a++
となります。
とりあえずこのまま②の100000の数字の回数だけ
④のa++を繰り返すと覚えてしまえばそのまま使えます。
これ以外でfor文を使うことはあまりないので仕組みを覚えてなくても
とりあえずなんとかなるのですがあえて説明します。
a++やi++は1たすということは分かりますか?
aが0のときa++を書くとaは1になります。
100000は説明が面倒なので5にさせてもらいます。
i<5はiが5より小さいかを判定します。iが5のときは含まれません。
この判定が成立していると繰り返しを実行します。
for(①; ②; ③) ④;を
for(i=0; i<5; i++) a++;として説明すると
① まずiの値が0になります。(i=0)
② iは0なので5より小さいので(i<5)
④ a++が実行されます。
③ 次にi++が実行されます。iは1になります。
② iは1なので5より小さいので(i<5)
④ a++が実行されます。
③ 次にi++が実行されます。iは2になります。
② iは2なので5より小さいので(i<5)
④ a++が実行されます。
③ 次にi++が実行されます。iは3になります。
② iは3なので5より小さいので(i<5)
④ a++が実行されます。
③ 次にi++が実行されます。iは4になります。
② iは4なので5より小さいので(i<5)
④ a++が実行されます。
③ 次にi++が実行されます。iは5になります。
② iは5なので5より小さくないので(i<5)
これで終わります。
数えてください。④は5回実行されましたね。
①は1回しか実行されないことと
④③②の順番に実行されることを覚えれば
これでほぼマスターしたといってもいいでしょう。
初心者が良く間違えるのは④が実行された後に
③と②が実行されていることを忘れることです。
①と③は何も書かなくても大丈夫です。
ただし、②は書かないといつまでたっても終わらないのでダメです。
i<5についてもっと詳しく書くと
i<5が成立しているときはi<5は1になります。
成立していないときは0になります。
つまり②の部分は1か0を書けばいいわけです。
(何も書かないと1が書いてあるとみなされるようです。)
for( ; 1; ) a++;こんなことを書いてもいいわけですがこれだと永久にa++が実行されてしまいます。
(正確には永久ではないですが)
ちなみに①と③を省略するときはwhile文というのを使うことが多いです。
こう書きます。
while(②){ ④; }for文と同じにしたいなら
①; while(②){ ④; ③; }と書けばいいですね。
for文は分かりましたか?これで分らなかったら私が落ち込みます。
あとはたくさん書いてみて実践あるのみです。
Re:
> 学生なのでC言語のみに打ち込める環境じゃないのでそれは不可能です。
> 読破は可能でも実行していたらまず無理です。
不可能だとすると、考えられる理由は次のいずれかかと思います。
1. 自由に使えるPCがない
2. やる気がない
3. 重篤な心身障害等により、健常者と同等の効率は無理
4. 全寮制の学校等、やや特殊な環境のため、自由時間の制約が大きい
逆にいえば、それ以外であれば、不可能というのはないと思います(困難というなら分かります)。
また、本当に不可能なら、通常の何倍もの時間がかかるのはいたし方ありません。
ちなみに、中学生や高校生は(そして専門学校生も)「生徒」であって「学生」ではありません。
> 読破は可能でも実行していたらまず無理です。
不可能だとすると、考えられる理由は次のいずれかかと思います。
1. 自由に使えるPCがない
2. やる気がない
3. 重篤な心身障害等により、健常者と同等の効率は無理
4. 全寮制の学校等、やや特殊な環境のため、自由時間の制約が大きい
逆にいえば、それ以外であれば、不可能というのはないと思います(困難というなら分かります)。
また、本当に不可能なら、通常の何倍もの時間がかかるのはいたし方ありません。
ちなみに、中学生や高校生は(そして専門学校生も)「生徒」であって「学生」ではありません。
Re:"時間を取得する"の単元で
>学生なのでC言語のみに打ち込める環境じゃないのでそれは不可能です。
>読破は可能でも実行していたらまず無理です。
甘えたこと言うな!
と言いたくなりますね。
じゃいつなら時間があるんでしょう。
勉強だけすればいい生活をしている身分で時間がないなんてね。
受験時期やバリバリの進学コースじゃなければ他の勉強出来る時間が生徒にないなんてことはまず無いですよね。
自分がやる気みせないで、楽に答えを得ようとする人間には人は集まりませんよ。
>読破は可能でも実行していたらまず無理です。
甘えたこと言うな!
と言いたくなりますね。
じゃいつなら時間があるんでしょう。
勉強だけすればいい生活をしている身分で時間がないなんてね。
受験時期やバリバリの進学コースじゃなければ他の勉強出来る時間が生徒にないなんてことはまず無いですよね。
自分がやる気みせないで、楽に答えを得ようとする人間には人は集まりませんよ。
Re:
ROMさんは結局何が言いたいのですか?
勉強だけすればいい生活をしているなんてあなたの解釈ですw
まぁ確かに僕は質問してる立場ですし僕の都合に無理に付き合わせようとした覚えはありませんよ。
勝手な妄想はやめてください。
>>自分がやる気みせないで、楽に答えを得ようとする人間には人は集まりませんよ。
やる気ありますのでごめんなさい。
別に楽に回答を求めようとした覚えはありません。
現に皆さんのおかげで何を調べればいいか、自分が何をすべきかもわかり、今それに向かってがんばっているところです、
というか空気呼んでください、コメントの流れ的にw そこつっこむところじゃないです。
(4/13 19:40 適切ではない表現が含まれていたので管理人によって文章が修正されました)
勉強だけすればいい生活をしているなんてあなたの解釈ですw
まぁ確かに僕は質問してる立場ですし僕の都合に無理に付き合わせようとした覚えはありませんよ。
勝手な妄想はやめてください。
>>自分がやる気みせないで、楽に答えを得ようとする人間には人は集まりませんよ。
やる気ありますのでごめんなさい。
別に楽に回答を求めようとした覚えはありません。
現に皆さんのおかげで何を調べればいいか、自分が何をすべきかもわかり、今それに向かってがんばっているところです、
というか空気呼んでください、コメントの流れ的にw そこつっこむところじゃないです。
(4/13 19:40 適切ではない表現が含まれていたので管理人によって文章が修正されました)
Re:
青春だなぁ(謎)
たかぎさんのいうとおり
>ちなみに、中学生や高校生は(そして専門学校生も)「生徒」であって「学生」ではありません。
「学生」は女学生にのみ許されるのであ~る!(嘘)
まあ、ゲーム製作に興味があってプログラミングも好きなら、「遊び」感覚でできるんじゃないかな?
時間がないといいますが・・・・
たしかに私も中高生の時は、友達と遊んだり、部活したり、バイトしたり、ゲームしたり、TV見たり、漫画読んだりと忙しかった(??)ので勉強する暇もないほどでした(アホ)
だけど、PC8801で始めたゲームやプログラムは時間を忘れて没頭していました。
トピ主さんの(生活)環境が分からないので一概に「お前のやる気がたらんのじゃ~!」と決め付けるわけにはいきません。
私は一応自分の部屋もあり、パソコンも自由に触れる環境がありましたから、時間は比較的多めにひねり出すことが出来たほうだと思います。
このサイトは「宿題」の質問などもOKですので、提示されたコードの意味が分からないといった質問でも
もちろん受け付けておられます。
このサイトの「○○館」のプログラムをコピペしていろいろ遊んでみてください。
変数の値をいろいろいじってどう変化するか比較するのも面白いです。
入門書のプログラムを実際に打ち込んで試してみるのも良いでしょう。
実はC言語はベーシックやアセンブラ、パスカル、COBOLなどのほかの言語と比べ、「命令」は非常に少ないんです。ちょっとがんばればすぐに覚えられると思いますよ。
まあ、標準関数やDXライブラリなどの関数群は逆に非常にたくさん種類がありますが((((((^_^;)
その辺はいちいちマニュアル類(サイト)などを調べながらでもとりあえずはOKですよ。
使っているうちに覚えます^^
みなさんの回答は一つ一つとっても至極まともな意見で、2○hみたいな「叩き」の雰囲気は私には一切感じられませんでした。
まあそれぞれ個性が出ますから、冷たいと感じる回答があっても仕方ありませんね。
質問の仕方さえ的確であれば、的確に暖かい回答が得られます。
「ゲーム作りたいんだけど、どうやったらいい?」
とか、
「なんか思ったとおりに動いてくれないんだけど」
とか、
「エラーが出るんで直してください」
なんて質問は最悪です(-_-;)
そのあたりの質問の仕方も含めて規約に書いてありますので、まずはじっくりと読んで、
他のトピックも時間が許す限り読んで、「いい質問の仕方」、「悪い質問のしかた」
をじっくり観察してみてはいかがでしょう?
たかぎさんのいうとおり
>ちなみに、中学生や高校生は(そして専門学校生も)「生徒」であって「学生」ではありません。
「学生」は女学生にのみ許されるのであ~る!(嘘)
まあ、ゲーム製作に興味があってプログラミングも好きなら、「遊び」感覚でできるんじゃないかな?
時間がないといいますが・・・・
たしかに私も中高生の時は、友達と遊んだり、部活したり、バイトしたり、ゲームしたり、TV見たり、漫画読んだりと忙しかった(??)ので勉強する暇もないほどでした(アホ)
だけど、PC8801で始めたゲームやプログラムは時間を忘れて没頭していました。
トピ主さんの(生活)環境が分からないので一概に「お前のやる気がたらんのじゃ~!」と決め付けるわけにはいきません。
私は一応自分の部屋もあり、パソコンも自由に触れる環境がありましたから、時間は比較的多めにひねり出すことが出来たほうだと思います。
このサイトは「宿題」の質問などもOKですので、提示されたコードの意味が分からないといった質問でも
もちろん受け付けておられます。
このサイトの「○○館」のプログラムをコピペしていろいろ遊んでみてください。
変数の値をいろいろいじってどう変化するか比較するのも面白いです。
入門書のプログラムを実際に打ち込んで試してみるのも良いでしょう。
実はC言語はベーシックやアセンブラ、パスカル、COBOLなどのほかの言語と比べ、「命令」は非常に少ないんです。ちょっとがんばればすぐに覚えられると思いますよ。
まあ、標準関数やDXライブラリなどの関数群は逆に非常にたくさん種類がありますが((((((^_^;)
その辺はいちいちマニュアル類(サイト)などを調べながらでもとりあえずはOKですよ。
使っているうちに覚えます^^
みなさんの回答は一つ一つとっても至極まともな意見で、2○hみたいな「叩き」の雰囲気は私には一切感じられませんでした。
まあそれぞれ個性が出ますから、冷たいと感じる回答があっても仕方ありませんね。
質問の仕方さえ的確であれば、的確に暖かい回答が得られます。
「ゲーム作りたいんだけど、どうやったらいい?」
とか、
「なんか思ったとおりに動いてくれないんだけど」
とか、
「エラーが出るんで直してください」
なんて質問は最悪です(-_-;)
そのあたりの質問の仕方も含めて規約に書いてありますので、まずはじっくりと読んで、
他のトピックも時間が許す限り読んで、「いい質問の仕方」、「悪い質問のしかた」
をじっくり観察してみてはいかがでしょう?
Re:
煽るつもりはないのですけど、
kerotan0820さんは、C言語の勉強以前に、ネットマナーについて学んだほうが良いと思います。
規約に「アットホームで温かい」とあるように、ここの掲示板はとてもやさしい人が多いです。
そもそも、中学生と言うだけで相手にされない場合もあるので、この貴重な居場所を失わないほうが良いです。
全てのレスを見てきましたが、本当にkerotan0820さんのことを思っての書き込みが多く見られました。
ROMさんのレスも、このスレッドの書き込みの中では多少厳しい意見ではありますが、
通常であれば、このような言い方は極めて優しい言い方です。
私も中学生ですが、時間は見つければたくさんあります。
私は私立に通っていますが、家が離れている分、1時間ほど電車に乗らなければいけません。
まず、その1時間で私はプログラミング等の勉強をしています。(座れればの話ですけど)
kerotan0820さんが普通の中学に通っていて、本当にC言語を勉強したければ、
少々の早起きをして、勉強するのもありだと思います。
また、休日が丸一日潰れる、ということはないでしょう?
少なくとも、夜の1~2時間は空くはずです。
その時間を活用すれば、勉強と両立したとしても、十分の時間があります。
やる気があるのなら、上で述べたようなことは出来るでしょう。
その点、時間がないというkerotan0820さんに対し、ROMさんは甘えるな、と言ったのだと思います。
掲示板では自分が投稿する内容をしっかり考えることが出来ます。
自分の好きな時間で書きたいことを考えることが出来るのです。
そのため、一時の感情でROMさんを貶すようなことを書かれていたのが残念でなりません。
No:32140 のような書き込みでは、
なぜ、自分に時間がないのか。
なぜ、自分が勉強だけしていればいい生活ではないのか。
なぜ、ROMさんの書き込みが流れに沿っていないのか。
のようなことが全くわかりません。
これでは、自分の考えが全く伝わらないでしょう。
私がkerotan0820さんに対し、意見を言える立場ではないとは思います。
ただ、このようなことでは、自分を貶めることになってしまいますよ。
kerotan0820さんは、C言語の勉強以前に、ネットマナーについて学んだほうが良いと思います。
規約に「アットホームで温かい」とあるように、ここの掲示板はとてもやさしい人が多いです。
そもそも、中学生と言うだけで相手にされない場合もあるので、この貴重な居場所を失わないほうが良いです。
全てのレスを見てきましたが、本当にkerotan0820さんのことを思っての書き込みが多く見られました。
ROMさんのレスも、このスレッドの書き込みの中では多少厳しい意見ではありますが、
通常であれば、このような言い方は極めて優しい言い方です。
私も中学生ですが、時間は見つければたくさんあります。
私は私立に通っていますが、家が離れている分、1時間ほど電車に乗らなければいけません。
まず、その1時間で私はプログラミング等の勉強をしています。(座れればの話ですけど)
kerotan0820さんが普通の中学に通っていて、本当にC言語を勉強したければ、
少々の早起きをして、勉強するのもありだと思います。
また、休日が丸一日潰れる、ということはないでしょう?
少なくとも、夜の1~2時間は空くはずです。
その時間を活用すれば、勉強と両立したとしても、十分の時間があります。
やる気があるのなら、上で述べたようなことは出来るでしょう。
その点、時間がないというkerotan0820さんに対し、ROMさんは甘えるな、と言ったのだと思います。
掲示板では自分が投稿する内容をしっかり考えることが出来ます。
自分の好きな時間で書きたいことを考えることが出来るのです。
そのため、一時の感情でROMさんを貶すようなことを書かれていたのが残念でなりません。
No:32140 のような書き込みでは、
なぜ、自分に時間がないのか。
なぜ、自分が勉強だけしていればいい生活ではないのか。
なぜ、ROMさんの書き込みが流れに沿っていないのか。
のようなことが全くわかりません。
これでは、自分の考えが全く伝わらないでしょう。
私がkerotan0820さんに対し、意見を言える立場ではないとは思います。
ただ、このようなことでは、自分を貶めることになってしまいますよ。
Re:
心を整理してみました
僕は初めてこのサイトを知り、わからない点があったため質問をしました。
初めての質問だったので丁寧に、PCの環境やら何やらをかたっぱしからわかりやすく丁寧に丁寧に書きました。
そこで帰ってきた回答はこんな頭の悪い僕でも簡単に理解できてしまうすばらしい回答ばかりでした。
それでもわからない点があってもわかるまでつきっきりで皆さんは付き合ってくださり、僕はこの掲示板はなくてはならないものとなっていました。
今回もいつもどおりわからない点があったから質問をしました。
そしたら帰ってきた一つ目の回答が、直接僕がおもっていた質問に対する回答ではなく、こうしたほうがいいという指摘で、実際はそれは今おもうと回答者様から僕に向けられたやさしさに感じました
ですが今までここであまりにもわかりやすい回答しか見ていなかったために、叩かれてるような感じがしていたのだとおもいます。
あくまで僕の被害妄想ですがね;
その後に続く回答も、直接答えにつながらず、一つ目のコメで多少いらいらしてしまっていたために、僕に対する批判コメに全部が見えてきてしまっていました…。
多少自己過剰なところがあって、ちょっとした言葉や周りの雰囲気を悪いほうに受け止めてしまう傾向があります… なんとか治して行きたいとおもいます。
++MNSさん++
中学生とは思えないご立派な文に唖然としました…
確かに今おもうと僕が忙しい忙しい言ってる原因がまったく記載されていませんでしたね・・・
原因を簡単に言いますと、結局僕の都合の塊なのですが
学校が終わります⇒部活があり終わって家に着くと7時を回っています⇒塾があります⇒家に9時30頃に着きます⇒進研ゼミがあります⇒学校の宿題があります⇒風呂、飯、その他学校の用意などさまざま⇒C言語
という日程を毎日繰り返しています。
ささっとすませば簡単に終わってしまいそうな日程なのですが、ゼミを不覚にもためてしまい終わらせなくてはいけないのです(他人からすれば知るかって話ですがね;
塾の宿題もそういえばあります。
C言語の時間は寝る時間を1時とするとがんばれば3時間はできます。
あぁ。。。 十分ですねww ごめんなさいw
ここまで文書いたけどなんかやっぱり十分時間ありますね
ということで風呂入って勉強に集中したいとおもいます。
でも、ひとつ。小学校、中学1年まで学校に行かずフィーバーしてた僕だったので今これでも相当な努力はしてるつもりです、なのでもっとがんばれるのようなコメントに対してできるか!見たいな事をおもってしまっていた気もします。僕の事情で。
本当に皆さんご迷惑をおかけしました。
皆さんからの回答をけなすような言動を行い本当に申し訳ないとおもっています。
今後ともよろしくお願いします。
僕は初めてこのサイトを知り、わからない点があったため質問をしました。
初めての質問だったので丁寧に、PCの環境やら何やらをかたっぱしからわかりやすく丁寧に丁寧に書きました。
そこで帰ってきた回答はこんな頭の悪い僕でも簡単に理解できてしまうすばらしい回答ばかりでした。
それでもわからない点があってもわかるまでつきっきりで皆さんは付き合ってくださり、僕はこの掲示板はなくてはならないものとなっていました。
今回もいつもどおりわからない点があったから質問をしました。
そしたら帰ってきた一つ目の回答が、直接僕がおもっていた質問に対する回答ではなく、こうしたほうがいいという指摘で、実際はそれは今おもうと回答者様から僕に向けられたやさしさに感じました
ですが今までここであまりにもわかりやすい回答しか見ていなかったために、叩かれてるような感じがしていたのだとおもいます。
あくまで僕の被害妄想ですがね;
その後に続く回答も、直接答えにつながらず、一つ目のコメで多少いらいらしてしまっていたために、僕に対する批判コメに全部が見えてきてしまっていました…。
多少自己過剰なところがあって、ちょっとした言葉や周りの雰囲気を悪いほうに受け止めてしまう傾向があります… なんとか治して行きたいとおもいます。
++MNSさん++
中学生とは思えないご立派な文に唖然としました…
確かに今おもうと僕が忙しい忙しい言ってる原因がまったく記載されていませんでしたね・・・
原因を簡単に言いますと、結局僕の都合の塊なのですが
学校が終わります⇒部活があり終わって家に着くと7時を回っています⇒塾があります⇒家に9時30頃に着きます⇒進研ゼミがあります⇒学校の宿題があります⇒風呂、飯、その他学校の用意などさまざま⇒C言語
という日程を毎日繰り返しています。
ささっとすませば簡単に終わってしまいそうな日程なのですが、ゼミを不覚にもためてしまい終わらせなくてはいけないのです(他人からすれば知るかって話ですがね;
塾の宿題もそういえばあります。
C言語の時間は寝る時間を1時とするとがんばれば3時間はできます。
あぁ。。。 十分ですねww ごめんなさいw
ここまで文書いたけどなんかやっぱり十分時間ありますね
ということで風呂入って勉強に集中したいとおもいます。
でも、ひとつ。小学校、中学1年まで学校に行かずフィーバーしてた僕だったので今これでも相当な努力はしてるつもりです、なのでもっとがんばれるのようなコメントに対してできるか!見たいな事をおもってしまっていた気もします。僕の事情で。
本当に皆さんご迷惑をおかけしました。
皆さんからの回答をけなすような言動を行い本当に申し訳ないとおもっています。
今後ともよろしくお願いします。
Re:
例えば、プログラムを数学に例えると
3Dのゲームが、高校の数学
このサイトが、小学校の算数を理解していれば
だとすれば、for文は
2 X 3 = 6
は、なぜ6になるのですか?
と質問しているような感じなんです。
かけざんを勉強してくださいと言いたくなります。
質問者さんは中学生だそうですが、
同級生に2 X 3はなぜ6になるんだと聞かれたら何と答えますか?
りんごを2つ持った人が3人いて・・・とまじめに答えますか?
答えが来なかったのはこんな経緯だと思います。
また、ゲームを作るのが中学の数学だとすると
まだ、小学校の算数も理解していないということで
ぜんぜん勉強が足りないってことですね。
読むことも大切ですが、入門書に載ってるサンプルをとにかく書くことです。
文字や数字を変えてみたり、わざとエラーになるようなことも書いてみると良いです。
ゲームを書くときに、この処理はあれが使えそうだなとか、このエラーはあの時見たな
など、将来役にたちます。
1日3時間も勉強しなくていいです。10分もあればサンプルの1つくらい書けませんか?
それで分からなかったらいくらでも質問すればいいんです。
私が高校のときはCじゃなくてBASICって言語でしたが
マイコンBASICマガジンって雑誌があってゲームのプログラムがたくさん載ってたんですが
休み前はよく徹夜で打ち込んでました。ぜんぜん理解してませんでしたが。
今はこんな便利な掲示板があるんですから、いくらでも質問すればいいと思いますよ。
まあ、質問する前に調べてからのほうが良いですね。
調べたけどこの部分が理解できなかったなど書けば、やさしい回答がくると思います。
3Dのゲームが、高校の数学
このサイトが、小学校の算数を理解していれば
だとすれば、for文は
2 X 3 = 6
は、なぜ6になるのですか?
と質問しているような感じなんです。
かけざんを勉強してくださいと言いたくなります。
質問者さんは中学生だそうですが、
同級生に2 X 3はなぜ6になるんだと聞かれたら何と答えますか?
りんごを2つ持った人が3人いて・・・とまじめに答えますか?
答えが来なかったのはこんな経緯だと思います。
また、ゲームを作るのが中学の数学だとすると
まだ、小学校の算数も理解していないということで
ぜんぜん勉強が足りないってことですね。
読むことも大切ですが、入門書に載ってるサンプルをとにかく書くことです。
文字や数字を変えてみたり、わざとエラーになるようなことも書いてみると良いです。
ゲームを書くときに、この処理はあれが使えそうだなとか、このエラーはあの時見たな
など、将来役にたちます。
1日3時間も勉強しなくていいです。10分もあればサンプルの1つくらい書けませんか?
それで分からなかったらいくらでも質問すればいいんです。
私が高校のときはCじゃなくてBASICって言語でしたが
マイコンBASICマガジンって雑誌があってゲームのプログラムがたくさん載ってたんですが
休み前はよく徹夜で打ち込んでました。ぜんぜん理解してませんでしたが。
今はこんな便利な掲示板があるんですから、いくらでも質問すればいいと思いますよ。
まあ、質問する前に調べてからのほうが良いですね。
調べたけどこの部分が理解できなかったなど書けば、やさしい回答がくると思います。
Re:
■hss12様
>>例えば、プログラムを数学に例えると
>>3Dのゲームが、高校の数学
>>このサイトが、小学校の算数を理解していれば
>>だとすれば、for文は
>>2 X 3 = 6
>>は、なぜ6になるのですか?
>>と質問しているような感じなんです。
>>かけざんを勉強してくださいと言いたくなります。
>>質問者さんは中学生だそうですが、
>>同級生に2 X 3はなぜ6になるんだと聞かれたら何と答えますか?
>>りんごを2つ持った人が3人いて・・・とまじめに答えますか?
>>答えが来なかったのはこんな経緯だと思います。
納得しました。もう少し実力をつけたいとおもいます。
>>読むことも大切ですが、入門書に載ってるサンプルをとにかく書くことです。
>>文字や数字を変えてみたり、わざとエラーになるようなことも書いてみると良いです。
>>ゲームを書くときに、この処理はあれが使えそうだなとか、このエラーはあの時見たな
>>など、将来役にたちます。
>>1日3時間も勉強しなくていいです。10分もあればサンプルの1つくらい書けませんか?
>>それで分からなかったらいくらでも質問すればいいんです。
僕が持ってる入門書には最初からエラーが起きるように組まれたプログラムが単元ごとに載っており、エラーが起きないように修正する作業があるのですが、それは使ったりしています。
入門書事態はなんか説明が難しいのでC言語の解説サイトを使っています。
確かに文字や数字を変えて、実行結果の違いを見比べたり、自分で意識してやると理解が深まるのはDXライブラリの図を表示する単元で実感しました。
C言語でもその方針でがんばりたいとおもいます
10分あればプログラムの1つ書けます・・・
まぁ正直3時間もC言語やる元気は僕ないのですけど、できるとしたら限界がそれくらいかなみたいな^^;
事実上長くても1時間30くらいしかやってませんw
勉強して、わからないことがあったらここで質問して、その間に別の用事を済ますみたいなことを繰り返してます。
>>私が高校のときはCじゃなくてBASICって言語でしたが
>>マイコンBASICマガジンって雑誌があってゲームのプログラムがたくさん載ってたんですが
>>休み前はよく徹夜で打ち込んでました。ぜんぜん理解してませんでしたが。
マイコンBASICマガジンはきいたことあります^^
技術科の担任は学生のころたしかそんな感じの本にゲーム投稿したりして遊んでいたそうです
僕も休みなどを利用してがんばってみたいとおもいます
>>例えば、プログラムを数学に例えると
>>3Dのゲームが、高校の数学
>>このサイトが、小学校の算数を理解していれば
>>だとすれば、for文は
>>2 X 3 = 6
>>は、なぜ6になるのですか?
>>と質問しているような感じなんです。
>>かけざんを勉強してくださいと言いたくなります。
>>質問者さんは中学生だそうですが、
>>同級生に2 X 3はなぜ6になるんだと聞かれたら何と答えますか?
>>りんごを2つ持った人が3人いて・・・とまじめに答えますか?
>>答えが来なかったのはこんな経緯だと思います。
納得しました。もう少し実力をつけたいとおもいます。
>>読むことも大切ですが、入門書に載ってるサンプルをとにかく書くことです。
>>文字や数字を変えてみたり、わざとエラーになるようなことも書いてみると良いです。
>>ゲームを書くときに、この処理はあれが使えそうだなとか、このエラーはあの時見たな
>>など、将来役にたちます。
>>1日3時間も勉強しなくていいです。10分もあればサンプルの1つくらい書けませんか?
>>それで分からなかったらいくらでも質問すればいいんです。
僕が持ってる入門書には最初からエラーが起きるように組まれたプログラムが単元ごとに載っており、エラーが起きないように修正する作業があるのですが、それは使ったりしています。
入門書事態はなんか説明が難しいのでC言語の解説サイトを使っています。
確かに文字や数字を変えて、実行結果の違いを見比べたり、自分で意識してやると理解が深まるのはDXライブラリの図を表示する単元で実感しました。
C言語でもその方針でがんばりたいとおもいます
10分あればプログラムの1つ書けます・・・
まぁ正直3時間もC言語やる元気は僕ないのですけど、できるとしたら限界がそれくらいかなみたいな^^;
事実上長くても1時間30くらいしかやってませんw
勉強して、わからないことがあったらここで質問して、その間に別の用事を済ますみたいなことを繰り返してます。
>>私が高校のときはCじゃなくてBASICって言語でしたが
>>マイコンBASICマガジンって雑誌があってゲームのプログラムがたくさん載ってたんですが
>>休み前はよく徹夜で打ち込んでました。ぜんぜん理解してませんでしたが。
マイコンBASICマガジンはきいたことあります^^
技術科の担任は学生のころたしかそんな感じの本にゲーム投稿したりして遊んでいたそうです
僕も休みなどを利用してがんばってみたいとおもいます