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

📄 unit2.pas

📁 取磁盘空间及驱动器类型.rar
💻 PAS
字号:
unit Unit2;

interface
uses
  Windows, Messages, SysUtils;

//身份证15位升18位的算法
function f(ID: string):string;

implementation

function f(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; 


end.
 

⌨️ 快捷键说明

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