abs()
abs(x)
O abs() devolve o valor absoluto de um número — em outras palavras, ele tira o sinal e deixa tudo positivo. É perfeito quando você só quer saber o tamanho de uma diferença, sem se importar se ela é positiva ou negativa.
Sintaxe
abs(x);
Parâmetros
- x: o número que você quer transformar em positivo.
Retorno
O valor absoluto de x (se era negativo, vira positivo; se já era positivo, continua igual).
Exemplo
void setup() {
Serial.begin(9600);
}
void loop() {
int alvo = 512;
int leitura = analogRead(A0);
int erro = abs(leitura - alvo); // distância até o alvo, sempre positiva
Serial.println(erro);
delay(200);
}
Notas e cuidados
abs()no Arduino é uma macro: nunca ponha operações com efeito colateral dentro, comoabs(x++)— o resultado fica imprevisível. Faça a conta antes e passe só a variável.- Ele funciona tanto com inteiros quanto com
float, mas o resultado segue o tipo do que você passou.