ページ 11

C言語エラーについて質問です

Posted: 2010年2月09日(火) 12:45
by ko
主要部以外は省略します
if(o < 0.050&&t%PR == 0 )
 for(l=0; l < Tp ; l++ ){printf("\n進め\n%d%d%d%d\n",1,0,0,0);}; 
 for(l=0; l < Tp ; l++ ){printf("\n進め\n%d%d%d%d\n",0,1,0,0);};
for(l=0; l < Tp ; l++ ){printf("\n進め\n%d%d%d%d\n",0,0,1,0);};
for(l=0; l < Tp ; l++ ){printf("\n進め\n%d%d%d%d\n",0,0,0,1);};
else if(o > 0.9500&&t%PR == 0 )                   228行
 for(l=0; l < Tp ; l++ ){printf("\n後ろ\n%d%d%d%d\n",0,0,0,1);};    229行
 for(l=0; l < Tp ; l++ ){printf("\n後ろ\n%d%d%d%d\n",0,0,1,0);};
 for(l=0; l < Tp ; l++ ){printf("\n後ろ\n%d%d%d%d\n",0,1,0,0);};
 for(l=0; l < Tp ; l++ ){printf("\n後ろ\n%d%d%d%d\n",1,0,0,0);};

エラーが c:228: error: syntax error before "else"
c:229: error: syntax error before ")" token

です。何が悪いのかよくわからないためご教授下さい。変数の設定などにミスはないと思います。

Re:C言語エラーについて質問です

Posted: 2010年2月09日(火) 12:49
by Mist
ifに中括弧をつけないからです。
ifに中括弧をつけない場合、次の文までしか有効になりません。
よって、ifが無いのにelse ifが出てきたからエラーといってます。

if(o < 0.050&&t%PR == 0 ) {
 for(l=0; l < Tp ; l++ ){printf("\n進め\n%d%d%d%d\n",1,0,0,0);}; 
 for(l=0; l < Tp ; l++ ){printf("\n進め\n%d%d%d%d\n",0,1,0,0);};
for(l=0; l < Tp ; l++ ){printf("\n進め\n%d%d%d%d\n",0,0,1,0);};
for(l=0; l < Tp ; l++ ){printf("\n進め\n%d%d%d%d\n",0,0,0,1);};
} else if(o > 0.9500&&t%PR == 0 ) {                   228行
 for(l=0; l < Tp ; l++ ){printf("\n後ろ\n%d%d%d%d\n",0,0,0,1);};    229行
 for(l=0; l < Tp ; l++ ){printf("\n後ろ\n%d%d%d%d\n",0,0,1,0);};
 for(l=0; l < Tp ; l++ ){printf("\n後ろ\n%d%d%d%d\n",0,1,0,0);};
 for(l=0; l < Tp ; l++ ){printf("\n後ろ\n%d%d%d%d\n",1,0,0,0);};
}
画像

Re:C言語エラーについて質問です

Posted: 2010年2月09日(火) 13:03
by ko
お早い変身ありがとうございます。言われたとおりに直して再コンパイルしてみますね

Re:C言語エラーについて質問です

Posted: 2010年2月09日(火) 13:31
by ko
おっしゃられた通りにコンパイルしたら見事その部分のエラーが無くなりました。
しかし、今度は別のところでエラーが出てきてしまいました。
さっき書いたソースコードはvoid forward(long int t);という関数宣言した関数内のコードなのですが、

再コンパイルした際のエラーが、
   c:In functon `forward":
c:318: error: syntax error at end of Input

となり、double sigmoid(double u)
{
return 1.0 / (1.0+exp(-beta*u));   317行目
}

でなぜかエラーが出てきsてしまう始末です。想像できる範囲でよろしいので、エラーの原因を教えていただけますか?

Re:C言語エラーについて質問です

Posted: 2010年2月09日(火) 13:42
by Blue
forward関数の括弧の対応がおかしくないですか?

Re:C言語エラーについて質問です

Posted: 2010年2月09日(火) 13:58
by ko
ありがとうございました。無事解決しました。

Re:C言語エラーについて質問です

Posted: 2010年2月09日(火) 13:59
by ko
解決しました。皆さんありがとうございます。