Integer Division liefert falsches Ergebnis?

Hi, ich speichere einen Floatwert zwischen 0.00 und 0.99 im EEPROM.
Das speichern geht wie folgt, die float wird mit "100" multipliziert, soweit funktioniert auch alles.
Hier der Code fürs speichern:

int first = value*100;
EEPROM.write(10, first);
Serial.println("setAuto:" + String(EEPROM.read(10)));

Der Code zum Auslesen sieht dann wie folgt aus:

int first = EEPROM.read(10);
float result = first/100;
Serial.println("autoMin:"+String(result));
return result;

Angenommen es wird die float "0.15" gespeichert also umgewandelt dann die "15", dann müsste nach der Rechnung eigentlich wieder 0.15 rauskommen. 15/100 = 0.15
Allerdings kommt immer 0.00 raus egal welchen Wert ich speichere.

Frohes neues wünsch ich euch allen noch :slight_smile:

Gruß
Noah

float result = (float)first/100;

Müsste glaub so lauten.

/ 100 ist eine Ganzzahl Division

/ 100.0 ist ist Gleitkomma

Vielen Dank, jetzt funktioniert es :slight_smile: