回覆列表
-
1 # 怒斬魂
-
2 # 班衣888
條形碼的最後一位數字被稱為校驗位,目的是檢測條形碼是否輸入正確。校驗位的計算方法是將條形碼中從左到右的奇數位數字的和乘以3,再加上從左到右的偶數位數字的和,然後將得到的結果除以10,然後用10減去餘數,就得到了校驗位的值。具體的公式如下:
S = (n1 + n3 + ... + n13) x 3 + (n2 + n4 + ... + n12)
校驗位 = (10 - (S % 10)) % 10
其中,n1到n12是條形碼中的前12位數字,n13是校驗位。%表示取模運算,即求餘數。
-
3 # 你說啥...
首先,把條形碼從右往左依次編序號為“……4,3,2,1。”從序號二開始把所有偶數序號為上的數相加求和,用求出的和乘3,再從序號三開始把所有奇數序號上的數相加求和,用求出的和加上剛才偶數序號上的數的和乘3的積,然後得出和。再用大於這個和的最小的10的倍數減去這個和,就得出校驗碼。此條形碼為:977167121601X(X為校驗碼)。
1、1+6+2+7+1+7=24
2、24×3=72
3、0+1+1+6+7+9+24
4、72+24=96
5、100-96=4
所以最後校驗碼X=4。此條形碼為9771671216014
-
4 # 用戶3298172700998359
奇數位上數字之和+偶數位上數字之和*3得出一個數值。
比它本身大於或等於10的整倍數減去這數值,就得出最後一個數字
結論:條形碼最後一位數字是通過前面所有數字的加權和取模得出的,公式為:sum = 3×(b1+b3+b5+...+b11)+b2+b4+b6+...+b12,check digit = 10 - (sum mod 10),其中b1~b12分別為條形碼號碼中的每一位數字。
解釋原因:條形碼最後一位數字也稱為校驗碼,用於檢查條形碼號碼是否輸入正確且有效,避免出現印刷錯誤、掃描錯誤等情況。在計算過程中,將每個數字的權重(3和1)分別乘以其對應的數字,並將乘積相加得到sum,然後再用10減去整除sum,得到的餘數即為校驗碼。
內容延伸:如果計算出的校驗碼為10,則用0代替。此外,不同國家和地區的條形碼校驗碼計算方法可能不同,需要根據實際情況進行處理。
具體步驟:以一維碼EAN-13為例,計算校驗碼的步驟如下:
1. 取條形碼號碼最後一位數字,設為X;
2. 將前面每一位數字分別乘以權重係數(奇數位:3,偶數位:1),並將乘積相加,得到sum;
3. sum對10取模,得到餘數Y;
4. 若Y為0,則校驗碼為0,否則校驗碼為(10-Y);
5. 若計算出的校驗碼為10,則用0代替。