Donde esta el error...

Hola, hice este nuevo código mucho mas simple para ajustar las sondas

float termometro1= 0;
float termometro2= 0;
float termometro3= 0;
float termometro4= 0;

void setup() {
 
 Serial.begin(9600); 

}
void loop() {
  int val = analogRead(0);
  int val1 = analogRead(1);
  int val2 = analogRead(2);
  int val3 = analogRead(3);
   termometro1 = map(val,99,140,100,0);
   termometro2 = map(val1,101,140,100,0);
   termometro3 = map(val2,99,140,100,0);
   termometro4 = map(val3,99,140,100,0);
Serial.print (" Term 1 ");   
Serial.print (termometro1,2);
Serial.print (" Term 2 ");
Serial.print (termometro2,2);
Serial.print (" Term 3 ");
Serial.print (termometro3,2);
Serial.print (" Term 4 ");
 Serial.println (termometro4,2);
 delay(100); 
}

El problema es que no va de grado en grado salta de a 2 por vez. Ni hablar de los decimales de grado siempre .00

en la imagen se ve que la sonda del termómetro 3 cambia de 20 a 22 sin pasar por el 21, en todas hace ese problema, se salta de a 2 y a veces de a 3 grados, no marca los intermedios