![]()  | 
![]() ![]() ![]() ![]()  | 
   
 | 
Как проверить правильность International Bank Account NumberDelphi , Синтаксис , ПаролиАвтор: http://www.swissdelphicenter.ch 
// IBAN = International Bank Account Number
// Example : CH10002300A1023502601
function ChangeAlpha(input: string): string;
// A -> 10, B -> 11, C -> 12 ...
var
  a: Char;
begin
  Result := input;
  for a := 'A' to 'Z' do
  begin
    Result := StringReplace(Result, a, IntToStr(Ord(a) - 55), [rfReplaceAll]);
  end;
end;
function CalculateDigits(iban: string): Integer;
var
  v, l: Integer;
  alpha: string;
  number: Longint;
  rest: Integer;
begin
  iban := UpperCase(iban);
  if Pos('IBAN', iban) > 0 then
    Delete(iban, Pos('IBAN', iban), 4);
  iban := iban + Copy(iban, 1, 4);
  Delete(iban, 1, 4);
  iban := ChangeAlpha(iban);
  v := 1;
  l := 9;
  rest := 0;
  alpha := '';
  try
    while v <= Length(iban) do
    begin
      if l > Length(iban) then
        l := Length(iban);
      alpha := alpha + Copy(iban, v, l);
      number := StrToInt(alpha);
      rest := number mod 97;
      v := v + l;
      alpha := IntToStr(rest);
      l := 9 - Length(alpha);
    end;
  except
    rest := 0;
  end;
  Result := rest;
end;
function CheckIBAN(iban: string): Boolean;
begin
  iban := StringReplace(iban, ' ', '', [rfReplaceAll]);
  if CalculateDigits(iban) = 1 then
    Result := True
  else
    Result := False;
end;
Привет! Я готов помочь вам перевести текст на русский язык. Вот перевод: Это фрагмент кода на Delphi, который проверяет корректность международного банковского счета (IBAN). Процесс валидации IBAN включает в себя несколько шагов: 
 Вот разбивка функций в коде: 
 Чтобы использовать этот код, просто вызовите функцию  Обратите внимание, что это реализация по стандарту SWIFT BIC4 для валидации IBAN. Если вам нужно валидировать IBAN по другому стандарту, вы может потребоваться модифицировать код соответствующим образом. Некоторые предложения по улучшению: 
 Статья описывает функции на языке Delphi для проверки правильности International Bank Account Number (IBAN), включая расшифровку буквенных символов в номере счета и подсчет контрольной суммы. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш  
  | 
||||
 ©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007  | ||||