Bug no floating point? (SOLVED)

Estou tendo alguns problemas estranhos... as vezes conta corretamente as vezes não como por exemplo abaixo....
a saida fica em 1234.567871.... e não incrementa...


float number = 1234.567890;
void setup() { 
}
void loop() {
number = number + 0.00001 ;
Serial.println (number,6);
delay (50);
}

Olá. Os flutuadores têm apenas 6 a 7 dígitos decimais de precisão. Isso significa o número total de dígitos, não o número à direita da vírgula decimal, e você está nesse exemplo usando um número de 10 dígitos. Seria correto e funcionaria para você 1234.567 ou 1.234567, ¿entendeu? apenas 7 dígitos.
Saudações.

Entendi. Obrigado pela explicação. Pensava que eram 7 digitos após a virgula e não totais. Estava bugando minha cabeça ... rsrsrs

Boa noite @acjacques ,
porque você precisa de incrementar este numero float?
Se incrementar um unigned long não vai dar certo?


unsigned long number = 1234567890;
void setup() { 
}
void loop() {
number = number + 1 ;
Serial.println (number);
delay (50);
}

--------------------------------- 1.234.567.890
Assim pode chegar até 4.294.967.295

Na realidade minha aplicação não é essa . Estava fazendo alguns cálculos com floats e vi algumas inconsistências....então fui testando e simplifiquei o código para pesquisar a causa do erro...