Code:
function JmbgControlNum(AJmbg:string):byte;
{
F-ja za izracunavanje kontrolnog broja (13. cifre) JMBG
JMBG predstavimo kao ABCDFGHAIJKLX, gde je X kontrolni broj.
CheckSum:
CS = 11-( 7*(A+G) + 6*(B+H) + 5*(C+I) + 4*(D+J) + 3*(E+K) + 2*(F+L) ) MOD 11
ako je:
CS <= 9 -> X = CS
CS > 9 -> X = 0
Napomena: U nekim slucajevima je u maticnim knjigama unesen pogresan JMBG pa
korisnicima programa morate omoguciti unos i pogresnih brojeva.
Ovo je narocito vazno za osobe sa teritorije BiH gde je to veoma cest slucaj.
}
var
i, j : byte;
wSum : Word;
begin
wSum := 0;
j := 1;
for i:= 7 downto 2 do
begin
wSum := wSum + i * (StrToInt(AJmbg[j]) + StrToInt(AJmbg[j+6]));
j := j + 1;
end;
Result := 11 - wSum mod 11;
if Result > 9 then Result := 0;
end;
Marcha
-----------------------------------
Pretpostavka je majka zajeba.