скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Создание банковского ключа




function CheckCtrlKey( aNLs : string; aMfo : real ) : boolean;
const
  {12345678901234567890xxx}
  msk : string[28]= '71371371371371371371713';
var
  i : byte;
  s : integer;
  nls : string[28];
  bic : string[10];
begin
  bic := LeftPad( Real0Str( aMfo, 9, 0 ), 9 );
  if bic[7] < >  '0' then {< =Простая проверка -- это РКЦ?}
    { не учитывает ГРКЦ }
    nls := bic[7]+bic[8]+bic[9]
  else
    nls := '0'+ bic[5]+bic[6]; { РКЦ }
  nls := aNLs + nls;
  s:= 0;
  for i := 1 to 23 do
    s := s + ( ( (byte(nls[i])-48) * (byte(msk[i])-48) ) mod 10 );
  s := s mod 10;
  CheckCtrlKey := s = 0;
end;






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook