LED 12C not working

Do the calculation for Read = 1023 and for Read = 0. i.e. the two limit values.

For 123 you get 10 with 3399 zeros. That is out of range of both decimal and scientific notation.
Even with 0 you get a very small number.

I am not sure how the Arduino print() handles scientific output.
Try it on the Serial Terminal.

David.

Edit.

void setup() 
{
    Serial.begin(9600);
    Serial.println(5.5e-4);
    Serial.println(5.5e1500);
}

void loop() 
{
}

displays 0.00 and inf (on an M0 Pro). It will do the same on a Uno.

If you want fancy formatting or scientific notation, you can probably use dtostrf() and dtostre()
You still need to provide valid float numbers.