Probleme mit Modulo

Hier kann alles mögliche diskutiert werden. Themen zu Purebasic sind hier erwünscht.
Flames und Spam kommen ungefragt in den Mülleimer.
stark
Beiträge: 8
Registriert: 06.03.2005 18:51
Wohnort: Kommern
Kontaktdaten:

Probleme mit Modulo

Beitrag von stark »

hallo,
ich hab ein programm geschrieben mit dem man prüfziffern an kontonummern dran hängen kann, dazu muß ich modulo rechnen...
kontonummer modulo 97. ergebnis war 2 bei purebasic, bei allen anderen taschenrechnern und softwareprodukten (auch java) 77.

hier ist der source...vllt habe ich auch einfach nur etwas falsch geschrieben.

Code: Alles auswählen

Global kontonummer.s
Global konto.l
Global zsatz.w
kontonummer = InputRequester("Bitte geben sie...","...eine Kontonummer", "43564523")

;MessageRequester("",Str(4356452300 % 97),#PB_Messagerequester_ok)
 konto = Val(kontonummer)
If (konto % 97) <> 0
  MessageRequester("",Str(((100*konto) % 97)),#PB_Messagerequester_ok)
  zsatz = 97 - ((100*konto) % 97)
  kontonummer = Str(konto) + Str(zsatz)
  MessageRequester("Die neue Kontonummer...","...lautet " + kontonummer, #PB_Messagerequester_ok)
Else
  
  MessageRequester("Achtung", "Kontonummer ist schon gültig!",#PB_Messagerequester_ok);
EndIf
danke für eure hilfe.

p.s. das proggy habe ich für mich selbst gechrieben um übungsaufgaben für mein studium zu kontrollieren

gruß

der stark

Edit by NicTheQuick: Code-Tags gesetzt
der weg ist das ziel
Benutzeravatar
DrShrek
Beiträge: 1970
Registriert: 08.09.2004 00:59

Beitrag von DrShrek »

Mach mal:

Code: Alles auswählen

Debug 43564523% 97
Und dann mach mal:

Code: Alles auswählen

Debug 4356452300% 97
Alles klar?
Siehste! Geht doch....?!
PB*, *4PB, PetriDish, Movie2Image, PictureManager, TrainYourBrain, ...
stark
Beiträge: 8
Registriert: 06.03.2005 18:51
Wohnort: Kommern
Kontaktdaten:

danke

Beitrag von stark »

dann scheint der algortihmus falsch zu sein... aber das ist der den der dozent uns gegeben hat... ich werd es mal weiter versuchen
der weg ist das ziel
Benutzeravatar
stbi
Beiträge: 685
Registriert: 31.08.2004 15:39
Wohnort: Cleverly Hills

Beitrag von stbi »

Ich lass mich gern belehren, aber m.W. gibt es in D kein Prüfziffernverfahren mit Modulo 97, siehe http://www.bundesbank.de/download/zahlu ... 200503.pdf

Davon abgesehen rechnet PB den Modulo 97 von 43564523 völlig korrekt mit 77.

Wenn Du eine Kontonummer prüfen willst, darfst Du sie nicht einfach Mod97 rechnen und dann muss 0 rauskommen, Du musst vor dem Modulo rechnen erstmal die Stellen für die Prüfziffer wegnehmen. Einfach auf 0 setzen geht nicht.
PB 4.02 XP Pro SP2 "Der Code ist willig, aber der Prozessor ist schwach."

Es gibt keine Vista-Witze. Es ist alles wahr!
stark
Beiträge: 8
Registriert: 06.03.2005 18:51
Wohnort: Kommern
Kontaktdaten:

hi

Beitrag von stark »

du hast recht das in der brd keine kontonummer mit der prüfziffer hat die mod 97 gerechnet wird. es war eine übungsaufgabe für die fh und da ich meine hand gerechneten ergebnisse schnell und unkompliziert überprüfen wollte habe ich versucht dieses programm zu schreiben.

dennoch danke für den link.

gruß

der stark
der weg ist das ziel
Antworten