以下の例では、2 つの異なる ISIN に対して Luhn アルゴリズムを適用するための 1 つのアプローチを説明しています。 この2つの例の違いは、文字を数字に変換した後の桁数が奇数か偶数かに関係しています。 NSIN要素は任意のアルファベット数字列(9文字)なので、奇数文字の場合は偶数桁になり、偶数文字の場合は奇数桁になります。 奇数桁の場合は、最初の例の方法が使われる。 偶数桁の場合は、2番目の例のようになります。 Luhnアルゴリズムは、より一般的で、両方の種類や長さに対して同じ方法で適用できます(文字列の末尾から、1桁と2桁を交互に掛けます)。

Apple, Inc.です。 ISIN US0378331005、CUSIP 037833100から拡張ISINの本体は、1970年代に割り当てられたオリジナルのCUSIPである。 前面に国番号「US」が追加され、末尾にチェックデジットが追加されています。 国コードは発行国を示す。 チェックデジットはLuhnアルゴリズムで計算されます。

任意の文字を数字に変換してください。 US037833100 -> 30 28 037833100

奇数、偶数の文字を収集する。

3028037833100 = (3, 2, 0, 7, 3, 1, 0), (0, 8, 3, 8, 3, 0)

右端の文字を含むグループ(これは最初のグループ)に2を掛ける:

(6, 4, 0, 14, 6, 2, 0)

それぞれの数字を合計してください。

(6 + 4 + 0 + (1 + 4) + 6 + 2 + 0) + (0 + 8 + 3 + 8 + 3 + 0) = 45

和の10進法:

45 mod 10 = 5

10より引き算をする。

10 – 5 = 5

結果の10進モジュラスを取る (この最後のステップは、結果のチェックデジットが10になるため、和のモジュラスが0である場合に重要です)。

5 mod 10 = 5

つまりISINのチェックデジットは5です。

Treasury Corporation of Victoria

TREASURY CORP VICTORIA 5 3/4% 2005-2016: ISIN AU0000XVGZA3.チェックデジットはLuhnアルゴリズムで計算されます。

任意の文字を数字に変換:

A = 10, G = 16, U = 30, V = 31, X = 33, Z = 35.チェックデジットを数字に変換:

A = 10, G = 16, U = 30, V = 31, X = 33, Z = 35. au0000xvgza -> 10 30 0000 33 31 16 35 10.

奇数と偶数の文字を集める:

103000003331163510 = (1, 3, 0, 0, 3, 1, 3, 1), (0, 0, 0, 3, 1, 6, 5, 0)

右端の文字を含むグループ(これはSECONDグループ)を2倍してください。

(0, 0, 0, 6, 2, 12, 10, 0)

各桁を足すと。

(1 + 3 + 0 + 0 + 3 + 3 + 1 + 3 + 1) + (0 + 0 + 0 + 6 + 2 + (1 + 2) + (1 + 0) + 0) = 27

和の10進法を取る:

27 mod 10 = 7

10から引き算をします。

10 – 7 = 3

結果の10進モジュロを取ります (この最後のステップは、結果のチェックデジットが10になるので、和のモジュロが0である場合に重要です)。

3 mod 10 = 3

したがって、ISINチェックデジットは3です。

BAE Systems

BAE Systems。 ISIN GB0002634946, expanded from SEDOL 000263494

本体はSEDOLで、前面に0を2つ追加したものです。 その後、上記の例のように国番号 “GB “を前面に、チェックデジットを末尾に追加する。

コメントを残す

メールアドレスが公開されることはありません。