⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 身份证15位升18位的算法.txt

📁 大量Delphi开发资料
💻 TXT
字号:
function SFZ15to18(ID: string):string; 
const 
W:array [1..18] of integer = (7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1); 
A:array [0..10] of char = ('1','0','x','9','8','7','6','5','4','3','2'); 
var 
i, j, S: integer; 
NewID: string; 
begin 
if Length(ID) <> 15 then 
result:= '' 
else begin 
NewID:= ID; 
Insert('19', NewID, 7); 
S:= 0; 
try 
for i:=1 to 17 do begin 
j:= StrToInt(NewID[i]) * W[i]; 
S:= S + j; 
end; 
except 
result:= ''; 
exit; 
end; 
S:= S mod 11; 
Result:= NewID + A[S]; 
end; 
end;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -