Descrição

Tipo de dado para números de ponto flutuante, um número que tem um ponto decimal. Números de ponto flutuante são freqüentemente usados para aproximar valores análogos e contínuos porque têm mais resolução que os inteiros.   Números de ponto flutuante abrangem a faixa de 3,4028235E+38 a -3,4028235E+38. Eles são armazenados em 32 bits (4 bytes) de informação.

Números de ponto flutuante não são exatos e podem gerar resutados estranhos quando comparados. Por exemplo 6.0 / 3.0 pode não ser igua a 2.0. Você deve, em vez disso, verificar que o valor absoluto da diferença entre os números é menor que um valor pequeno pré-determinado.

A matemática de ponto flutuante também é muito mais lenta que a dos inteiros na realização de cálculos, deve portanto ser evitada se, por exemplo, um loop tem que rodar a velocidade máxima para uma função em que o tempo é cr'tico. Programadares freqüentemente se esforçam para converter cálculos com pontos flutuantes em matemática de inteiros para aumentar a velocidade.

Exemplos

    float myfloat;
float sensorCalbrate = 1.117;

Sintaxe

    float var = val;
  • var - o nome da sua variável de ponto flutuante
  • val - o valor designado para a variável

Código de exemplo

   int x;
int y;
float z;

x = 1;
y = x / 2; // y agora contém 0, inteiros não suportam frações
z = (float)x / 2.0; // z agora contém .5 (voce deve usar 2.0, não 2)

Dica de programação

Serial.println() trunca os floats (despreza as frações) em inteiros quando enviando comunicação serial. Multiplique por potências de 10 para preservar a resolução.

 

Página de início da referência

Correções, sugestões, e nova documentação devem ser enviadas ao Forum.

O texto de referência do Arduino está baixo uma Licença Creative Commons Attribution-ShareAlike 3.0. Amostras de código utilizadas na referência foram deixados  ao domínio público.

 

O conteúdo desta página é uma tradução para o português a partir do site original do Arduino.

Esta obra está sob uma Licença Creative Commons.

Creative Commons License