0
私は私が言うループ持っ-0.000000
負の2のゼロが0に等しくない?
として印刷されている二重のoutput
を持っている:
if (output == 0) {
printf("Continuing to go STRAIGHT.\n");
}
else if (output > 0) {
printf("Turning LEFT.\n");
}
else if (output < 0) {
printf("Turning RIGHT.\n");
}
これはこれはなぜ-0.000000が0未満であることを言って、第三の条件を印刷し続けると問題を修正するにはどうすればよいですか?
本当に-0ですか?これらの行の直前に 'printf(" output =%f \ n "、output);を追加すると、何が印刷されますか? – dbush
また、 'output'はどのように割り当てられていますか? – dbush
'=='を使って浮動小数点数を比較することは、(基本的に)決して動作しません。 – UnholySheep