Probleme mit Modulo [Erledigt]

Alle Fragen um die Programmierung, die sich sonst nicht kategorisieren lassen. Von Makro bis Codeblock, von IF bis ENDIF

Moderator: Moderatoren

Probleme mit Modulo [Erledigt]

Beitragvon Jan » Fr, 23. Sep 2016 11:21

Hallo,

gerade stolpere ich über ein Problem mit einer Modulo-Berechnung für eine Barcode-Berechnung. Die betreffende Zeile lautet

Code: Alles auswählen
nCheckSum := nCheckSum % 103


Ich sehe im Debugger, das ich da mit nCheckSum = 1235 rein gehe. Wäre also 1235 / 103 = 11,990291262. Von daher sollte also nCheckSum nach dieser Zeile einen Wert von 99 haben. Das ist aber reproduzierbar immer 102.

Das funktioniert eigentlich immer korrekt. Nur in sehr seltenen Ausnahmefällen wie diesem jetzt nicht. Dabei nützt es auch nichts, wenn ich das Resultat der Berechnung nicht in die gleiche Variable zurück schreibe, sondern in eine andere.

System ist Windows 10 32 Bit und Xbase++ 2.0

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Jan
Foren-Administrator
Foren-Administrator
 
Beiträge: 11449
Registriert: Fr, 23. Sep 2005 17:23
Wohnort: 49328 Melle

Re: Probleme mit Modulo

Beitragvon Tom » Fr, 23. Sep 2016 11:49

Nö. 11 x 103 ist 1133. 1235 - 1133 ergibt 102
Herzlich,
Tom
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 6657
Registriert: Do, 22. Sep 2005 22:11
Wohnort: Berlin

Re: Probleme mit Modulo

Beitragvon georg » Fr, 23. Sep 2016 13:52

Liebe Grüsse aus der Eifel,

Georg
georg
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 1748
Registriert: Fr, 08. Feb 2008 21:29

Re: Probleme mit Modulo

Beitragvon Jan » Fr, 23. Sep 2016 14:08

OK. Hab den Fehler gefunden. Mathe war schon immer ein schwaches Fach bei mir. Ansonsten hätte ich sofort gesehen, das der Fehler nicht in der Modulo-Berechnung lag sondern in der Berechnung der Checksumme des Barcodes. Der Schreiber des Codes hat das durch Wandlungen von Barcode-Positionen nach ASCII-Positionen und zurück ein wenig verkompliziert, und da kam es dann auch zu dem Fehler.

Danke für Eure Hinweise, die mich von dem Verrennen in die falsche Richtung zurückgeholt haben und so die Möglichkeit geschaffen haben, mal korrekte zu suchen.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Jan
Foren-Administrator
Foren-Administrator
 
Beiträge: 11449
Registriert: Fr, 23. Sep 2005 17:23
Wohnort: 49328 Melle


Zurück zu Programmierung allgemein

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast