Sourceforge Tracker Monitor
norep****@sourc*****
2007年 4月 15日 (日) 23:03:52 JST
Bugs item #10110, was opened at 2007-03-17 08:37 You can respond by visiting: https://sourceforge.jp/tracker/?func=detail&atid=3140&aid=10110&group_id=816 Category: None Group: None Status: Open >Resolution: Fixed Priority: 5 Submitted By: (None) >Assigned to: panacoran (panacoran) Summary: 0との比較が正しく行われない Initial Comment: t_sugaです。 if 0 == obj[4]// この条件は、0での割り算を禁止する return else obj[1] = obj[3] / obj[4] end divided by 0でエラーになるのですが。 ---------------------------------------------------------------------- >Comment By: panacoran (panacoran) Date: 2007-04-15 23:03 Message: Logged In: YES user_id=6886 intとfloatの同値演算はintをfloatにキャストしてから行うよう にしました。これで0と0.0は同値になります。 ---------------------------------------------------------------------- Comment By: (None) Date: 2007-04-04 10:25 Message: Logged In: NO t_sugaです。 確かにif 0 < obj[4] だと エラーにならないから そうかもしれません。 後で確認してみます。 ---------------------------------------------------------------------- Comment By: panacoran (panacoran) Date: 2007-03-17 19:39 Message: Logged In: YES user_id=6886 疑うべき場所はreturn文ではなく0との比較です。 obj[4]がfloatの0だったりしませんか? Protra言語ではintの0とfloatの0つまり0.0は違う値です if obj[4] == 0.0 とするかintにキャストして if (int)obj[4] == 0 とすれば0除算を避けられるはずです。 ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.jp/tracker/?func=detail&atid=3140&aid=10110&group_id=816