max()
max(x, y)
O max() é o irmão do min(): ele te entrega o maior dos dois números. Serve muito pra garantir um piso, ou seja, impedir que um valor caia abaixo de um mínimo aceitável.
Sintaxe
max(x, y);
Parâmetros
- x: o primeiro número.
- y: o segundo número.
Retorno
O maior entre x e y, no mesmo tipo dos valores comparados.
Exemplo
void setup() {
Serial.begin(9600);
}
void loop() {
int leitura = analogRead(A0); // 0 a 1023
int comPiso = max(leitura, 100); // nunca fica abaixo de 100
Serial.println(comPiso);
delay(200);
}
Notas e cuidados
- Como
min(), omax()geralmente é uma macro: não use argumentos com efeito colateral (max(x++, y)), pois podem ser avaliados mais de uma vez. - Combinando
max()(piso) commin()(teto) você prende um valor numa faixa — mas oconstrain()faz isso num comando só. - Lembre da regra:
max()retorna o MAIOR. É fácil trocar commin()na correria.