給定一個數字,判斷它是否符合 Luhn 公式。
Luhn 演算法是一種簡單的校驗碼公式,用來驗證各種識別號碼,例如信用卡號碼和加拿大的社會保險號碼。
這個任務是要檢查給定的字串是否有效。
長度為 1 或更短的字串不算有效。 輸入中可以包含空格,但檢查前應該先移除。 其他所有非數字字元都不允許。
4539 3195 0343 6467
Luhn 演算法的第一步,是從最右邊開始,將每隔一位的數字加倍。 我們要加倍的是
4_3_ 3_9_ 0_4_ 6_6_
如果加倍後得到的數字大於 9,就把乘積減去 9。 加倍後的結果是
8569 6195 0383 3437
然後把所有數字相加:
8+5+6+9+6+1+9+5+0+3+8+3+3+4+3+7 = 80
如果總和能被 10 整除,這個號碼就是有效的。 這個號碼有效!
8273 1232 7352 0569
從最右邊開始,將每隔一位的數字加倍
7253 2262 5312 0539
將所有數字相加
7+2+5+3+2+2+6+2+5+3+1+2+0+5+3+9 = 57
57 不能被 10 整除,所以這個號碼無效。
請仔細閱讀指示。如果只是匆匆看過,可能會漏掉一些關於方向的重要細節喔。