ページ 11

計算のタイミングについて

Posted: 2008年10月19日(日) 11:13
by greenson
どうしても分からないのでお願いします。

最後まで行ったら時間が1step進むというプログラムをfor文で1000step行うのですが,
そのプログラムの中で2回違うタイミングで計算させたいことがあります.具体的には20stepごと(20,40,60...)にプログラムAを実行,その20step後(40,60,80...)にプログラムBを実行(言い換えると, プログラムAの実行後20steo後をプログラムBで計測)したいのですが, 書き方が分からなくて困っています. 以下のように考えたのですがこれだとBが実行されないようです.

for(;;){
if step = 20 + 20 * t ならA実行

if step = 40 + 20 * t ならB実行

stepを1上げる
20回に1回tを1上げる

アドバイスよろしくお願いします.

Re:計算のタイミングについて

Posted: 2008年10月19日(日) 11:42
by DIL
質問の意味がよくわからないのですが、こういうことですか?
違ってたらすいません。
for(t=0;t<1000;t++){
	if(t==19)
		Aを実行;
	if(t>19 && t%20==19)
		AとBを実行;
}

Re:計算のタイミングについて

Posted: 2008年10月19日(日) 11:48
by バグ
stepが0からではなく、1からスタートすることが前提です。
if (step % 20 == 0)
{
	/* プログラムAを実行 */

	if (step >= 40)
	{
		/* プログラムBを実行 */
	}
}