Modulo...

#463833
Lesenswert?

Eine Mutter hat 14 Äpfel und 3 Kinder.
Wieviele ganze Äpfel kriegt jedes Kind und wieviele
Äpfel bleiben der Mutter übrig

  14 / 3 = 4
  14 % 3 = 2

Jedes Kind kriegt 4 ganze Äpfel und 2 Äpfel bleiben
der Mutter.
Probe:  3 * 4 + 2 = 14

Eine Mutter hat 3 Äpfel und 5 Kinder. Wieviele ganze Äpfel
kriegt jedes Kind.

  3 / 5 = 0
  3 % 5 = 3

Kein einziges Kind kriegt einen ganzen Apfel und der Mutter
bleiben 3 Äpfel.
Probe: 5 * 0 + 3 = 3

Besser jetzt?
Gast #463923
Lesenswert?

Er hat geschrieben dass er da 0.6 'rauskriegt, wenn ich's in den 
Taschenrechner tippe kriege ich 0.6 'raus, der macht selbstverständlich 
einen Nachkommaanteil. Das Problem war eine reine Verständnisfrage die 
ich verdeutlichen wollte. Dass eine Integer-Variable keinen 
Nachkommaanteil hat ist mir schon klar.
#463924
Lesenswert?

@Sonic,

Du mußt den Taschenrechner auf HEX stellen, damit er Ganzzahl rechnet.
Dezimal rechnet er immer in float.

Ich wollte auch nur prinzipiell sagen, daß 0,6 garnicht rauskommen kann, 
da ja keine Ganzzahl.

Unter C ist default aber Ganzzahl.
Daher ist ein gern gemachter Fehler 1/x zu schreiben und sich dann 
wundern, warum 0 rauskommt (richtig ist 1.0/x).


Peter
Gast #463926
Lesenswert?

Klar Peter, haste Recht. Was ich verdeutlichen wollte ist: wenn man ab 
und zu Papier und Bleistift in die Hand nimmt und die Grundrechenarten 
von Hand durchführt werden die Grundlagen auch wieder klar. Schließlich 
macht der µC nix anderes als Grundrechenarten durchführen. Meine 
Darstellung war natürlich auch nicht besonders ausführlich, ich ging 
davon aus dass jeder in der Schule mal auf dem Papier divdiert hat.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren