Показать сообщение отдельно
  #1 (permalink)  
Старый 04.10.2010, 17:55
Интересующийся
Отправить личное сообщение для kodermax Посмотреть профиль Найти все сообщения от kodermax
 
Регистрация: 07.08.2008
Сообщений: 21

Проверка правильности банковского счета
Помогите переписать на javascript проверка банковского счета.

function CheckSchet(const Value:String):Boolean;
const SchetMask: array [1..23] of byte = (7,1,3,7,1,3,7,1,3,7,1,3,7,1,3,7,1,3,7,1,3,7,1); // весовые коэффициенты
var I,Summa:Integer;
begin
  Result:=False;
  Summa:=0;
  for I:=1 to 23 do
   begin
    if not (Value[I] in ['0'..'9']) then
     exit;
    Summa:=Summa+(StrToInt(Value[I])*SchetMask[I]) mod 10; // вычисляем контрольную сумму
  end;
  Result:=(Summa mod 10 = 0); // проверяем остаток от деления контрольной суммы на 10 с нулём
end;


Проверка правильности указания корреспондентского счёта:

function CheckKS(const Value,BIK:String):Boolean;
begin
  Result:=(Length(Value)=20) and CheckSchet('0'+Copy(BIK,5,2)+Value);
end;


Проверка правильности указания расчётного счёта:

function CheckRS(const Value,BIK:String):Boolean;
begin
  Result:=(Length(Value)=20) and CheckSchet(Copy(BIK,Length(BIK)-2,3)+Value);
end;

Последний раз редактировалось kodermax, 04.10.2010 в 18:06.
Ответить с цитированием