Calcular el dígito de control de una cuenta bancaria
Artículo por Club Developers · 31 diciembre 2005
3461 vistas
Con esta sencilla función podemos calcular el código de control de una cuenta bancaria con el formato banco(4) + sucursal(4) + cuenta(10)
Un ejemplo de llamada podrÃa ser el siguiente:
delphi
 function CalculaDC(BancoOficina, Cuenta: string):integer;  const   Pesos: array[0..9] of integer=(6,3,7,9,10,5,8,4,2,1);  var   n: byte;   iTemp: integer;  begin   iTemp := 0;   for n := 0 to 7 do    iTemp := iTemp + StrToInt(Copy(BancoOficina, 8 - n, 1)) * Pesos[n];   Result := 11 - iTemp mod 11;   if (Result > 9) then Result := 1 - Result mod 10;   iTemp := 0;   for n := 0 to 9 do    iTemp := iTemp + StrToInt(Copy(Cuenta, 10 - n, 1)) * Pesos[n];   iTemp := 11 - iTemp mod 11;   if (iTemp > 9) then iTemp := 1 - iTemp mod 10;   Result := Result * 10 + iTemp;  end;
Un ejemplo de llamada podrÃa ser el siguiente:
delphi
procedure TForm1.Button1Click(Sender: TObject); begin  Label1.Caption := IntToStr(CalculaDC('00851755','0000321764')); end;