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:
code: [select]

int first = value*100;
eeprom.write(10, first);
serial.println("setauto:" + string(eeprom.read(10)));

der code zum auslesen sieht dann wie folgt aus:
code: [select]

int first = eeprom.read(10);
float result = first/100;
serial.println("automin:"+string(result));
return result;

angenommen es wird die float "0.15" gespeichert 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 :)

gruß
noah

code: [select]

float result = (float)first/100;


müsste glaub lauten.


Arduino Forum > International > Deutsch (Moderator: uwefed) > Integer Division liefert falsches Ergebnis?


arduino

Comments

Popular posts from this blog

invalid use of void expresion in FlexiTimer2 library

error: a function-definition is not allowed here before '{' token

LED Strip Code