Forum: Algorithmen, Datenstrukturen und Klassendesign
by gammatester,
1. Sep 2015
Wenn es nur:-D darum geht, schnelle Langzahlarithmetik einzusetzen, kannst Du auch meine MPArith-Bibliothek verwenden (die ca 150 Mio Dezimalstellen sollten ja ausreichen). Eine Schwierigkeit bei Problemen wie Deinem ist halt, das es kein fertige Lösung gibt, man es selbst programmieren und sich erstmal einarbeiten muß. Aber wenn Du Deine Stringroutinen durch mp_xxx-Routinen ersetzt, sollte es...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by gammatester,
1. Sep 2015
Dazu braucht man weder Langzahlarithmetik noch schriftliche Division, das Ganze ist im wesentlichen ein Einzeiler (den man selbstverständlich noch durch ein paar Checks etc aufhübschen kann):
program iban;
var
i,m : integer;
const
s : string = '700901001234567890131408';
begin
m := 0;
for i:=1 to length(s) do m := (m*10 + ord(s)-ord('0')) mod 97;
writeln(s, ' mod 97 = ', m);