BUG Float???
- Войдите на сайт для отправки комментариев
Сб, 10/10/2020 - 15:02
Собственно вопрос вот:
unsigned long f = 43413500;
void setup() {
Serial.begin(115200);
}
void loop() {
float newf = f/100000;
Serial.print(" FREQ = ");
Serial.println(newf);
delay(100);
newf = f/1000;
newf = newf/100;
Serial.print(" FREQ_NEW = ");
Serial.println(newf);
delay(3000);
}
И вывод в порт:
FREQ = 434.00 FREQ_NEW = 434.13
Целочисленное деление в 8 строчке.
И в 12-ой тоже.
И в 12-ой тоже.
Посыпаю голову пеплом, исправил )))
unsigned long f = 43413500; void setup() { Serial.begin(115200); } void loop() { float newf = (float)f/100000; Serial.print(" FREQ = "); Serial.println(newf); delay(100); newf = (float)f/1000; newf = newf/100; Serial.print(" FREQ_NEW = "); Serial.println(newf); delay(3000); }тему можно удалить, или кусочек добавить в песочницу (ТИПИЧНЫЕ ОШИБКИ)
Зачем так-то?
Это не лучшая запись. Почему не написать просто
Зачем так-то?
Это не лучшая запись. Почему не написать просто
а ведь читал жеж )))