誤り検出 チェックディジット クレジットカードで使われている 一桁の誤入力まで検出できる (1つの例外を除き)隣り合う2つの数字を入れ替えて入力してしまった場合も検出できる 0, 9の隣り合うペアは、偶数桁だろうと奇数桁だろうと変わらんので(p(x)の定義より)、入れ替えても気付けない 計算 カード番号: a16,a15,a14,...,a1,a0 関数p(x) 0 (x=0) 9 (x=9) 2nmod9 (1≤x≤8) チェックサムS=a1+p(a2)+...+a15+p(a16) Smod10=0ならOK。そうでなければInvalid 実際に手元のカードで試してみると良い(kekeho)