Forum: Mikrocontroller und Digitale Elektronik Modulo mit uVision2


von alex (Gast)


Lesenswert?

Hallo,

ich möchte eine int-Zahl (0-1500) in die einzelnen Ziffern teilen und
dann über die serielle Schnittstelle senden. Ich habs mit folgendem
Source versucht:

int x = 1032, y;
y = x % 10;

Leider steht in y aber danach der selbe Wert wie in x, also 1032!!!

Kann mir vielleicht einen Tipp dazu geben? Vielleicht gibt's auch eine
andere Möglichkeit die Zahl aufzuteilen?
Vielen Dank im Voraus,
alex

von Benedikt (Gast)


Lesenswert?

Wie wäre es mit einer Schleife ?
while (y>10)
y-=10;

Ist warscheinlich auch um einiges schneller.

von alex (Gast)


Lesenswert?

Vielen Dank für die Hilfe, eine geniale Idee!

Ich bin nur auf einen kleinen Fehler draufgekommen:
Bei der Schleife musst du auf größer-gleich abfragen, also
while (y <= 10)

alex

von T. Stütz (Gast)


Lesenswert?

Ich verwende ständig das Modulo im uVision 2
ich tippe mal darauf das es funktioniert wenn du

y = (x % 10);

schreibst.

Gruss

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.