Ich möchte zwei Größen miteinander vergleichen. Als Ergebnis erwarte ich eine ganzahlige Prozentzahl (z.b 90) B ist 2200 und A kleiner B
1 | uint8_t Prozent; |
2 | uint16_t A; |
3 | uint16_t B; |
4 | Prozent=((uint32_t)(A*100)/B); |
warum funktioniert das nicht?
|
|
Forum: Compiler & IDEs Prozentberrechnung?!Ich möchte zwei Größen miteinander vergleichen. Als Ergebnis erwarte ich eine ganzahlige Prozentzahl (z.b 90) B ist 2200 und A kleiner B
warum funktioniert das nicht? Wenn A > 655 ist gibt es bei A*100 einen Überlauf, falls unsigned ints 16 Bit breit sind (wie etwa im GCC für den AVR). Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.
|
|