问题标签 [check-digit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
fedex - 如何计算 FedEx Smartpost 追踪号码的校验位
FedEx Ground 的追踪号码有不同的数字:12、15、20、22。
12 位跟踪号码使用 mod 11 算法。其他人使用 mod 10 算法。
但最近我得到了一些 20 位数的 FedEx Smartpost 跟踪号码,这两种算法都无法识别。
那么,如何识别这些跟踪号?
样品跟踪号:7489999873402038xxxx 6129270107532465xxxx
我想通了。
见:http: //images.fedex.com/us/software/pdf/FedEx_SmartPost_Job_Aid_v2600_06222012.pdf https://www.pdffiller.com/en/project/10655396.htm
22 位跟踪号码删除 2 位应用程序标识符(91 或 92)。我们需要在 mod 10 算法之前将应用程序标识符添加到跟踪号。
c# - 为什么我的 ASCII char 到 int 转换失败?
根据这里的图表:
http://www.idautomation.com/barcode-faq/code-128/
这个角色:
等于值 103。
然而这段代码:
...当文本框中的值和条码的值为“ËTry another string.”时,因此 barcode[0] 为“Ë”,返回值 171 而不是 103...???
并且根据这张图表: http: //www.adams1.com/128table.html,103对应的值为‡,但是当我将barCode设置为“‡Try another string.”时,返回值为8193 ... ???越来越好奇...
注意:相关/初步帖子是此代码用于计算 Code128 条形码校验位是否正确?
c# - 计算 UPC-A 条码的校验位
我目前正在使用 VS2010 中的 Windows 窗体,该窗体应该为新部件号创建 UPC-A 并将它们存储在数据库中。到目前为止,我仍在尝试将这些部分组合在一起,并且在计算校验位时遇到了问题。我想出了以下两种情况:
场景 1:按照我们目前在 Excel 中执行的方式进行计算:
运行此代码时,我收到错误消息“对于 Int32,值太大或太小”。我不明白为什么因为“值”是varchar
12 个字符(它们都是数字)。
场景2:我在网上找到了一段代码。此代码有效,但给了我错误的校验位。我正在使用我们使用您的 Excel 工作表计算的 UPC:
在这个例子中,校验位显然应该是 8,但它返回 2。我在这上面花了几乎一整天的时间,可以使用一些建议。为什么我在第一种情况下会收到错误,为什么在第二种情况下我会收到与应有的不同的校验位?
在此先感谢您的帮助!
克里斯
编辑:
我删除了之前的两次编辑,因为代码存在缺陷,从某种意义上说我没有得到正确的结果。我发现我们使用 Azalea 条形码,他们有自己的计算校验位的方法(参见 ChkDigitSubtotal)。所以下面的代码有效,并为我的场景提供了正确的校验位。我认为对于所有 UPC-A 计算,此代码将适用于 chkDigitSubtotal。感谢哈里森的出色指导和足智多谋的回答!
java - 如何计算 IBAN 国家校验码?
在Wikipedia之后,我正在开发一个 Java 应用程序来计算和验证来自不同国家的 IBAN。一些 BBAN 有一个国家校验位,但我找不到任何关于如何计算它的文档。我在哪里可以找到“国家校验位”的算法?我对“iban check digit”不感兴趣,但对与国家相关的数字不感兴趣。
java - 如何生成 CUSIP 校验位
CUSIP 是一个 9 位字母数字代码,用于唯一标识金融证券。
https://en.wikipedia.org/wiki/CUSIP
它们是在 1964 年发明的,鉴于 60 年代数据传输的可靠性,第 9 位实际上是用于确认前 8 个字符有效性的校验位。有时,即使在今天,您也可能找到想要验证 CUSIP 的理由,或者公司或服务令人讨厌地决定只传输 8 个字符的 CUSIP,即使这违背了校验位的目的。
生成校验位的过程是:
根据它们在字母表中的序数位置加上 9(A=10,B=11,...Z=35)将非数字数字转换为值,并转换字符 *=36,@=37,#=38。
将每个偶数乘以 2
如果乘法的结果是两位数,则将这些数字相加。(12 = 1 + 2 = 3)
获取所有值的总和。
获取此操作的底值:(10 - ( sum modulo 10)) modulo 10。
在 C# 中获得此值的最佳/最简单方法是什么?
python - 使用for循环时在python中出现类型错误
我相信这对你来说是一个非常基本的问题,但我正在为我的计算课制作一个 ISBN 校验位计算器。我目前的代码是这样的:
我知道这是一种非常低效的做法,你可能甚至看着它都在哭。
为了提高效率,我做的第一件事是使用 for 循环。所以,我改变了:
到一个 for 列表,但我还没有想出如何做到这一点。这是我需要帮助的一点(另外,我知道这个功能毫无意义。我们的老师要求我们有一个,但如果有人能找到更好的方法,那也太棒了)
非常感谢您的帮助。同样,如果您发现任何可以做得更好的东西,那么请这样做。(另外,这是 python 3。)
python - ISBN程序的Python属性错误
我刚刚修复了我的 ISBN 校验码代码以提高效率,但现在它又出现了属性错误:
这是代码:
非常感谢
algorithm - 将 Damm 算法扩展到 base-32
我想使用Damm 算法为具有 32 个字符的字母的代码生成校验位。该算法本身很容易应用于任何基础(2 或 6 除外)。困难在于必要的查找表,它必须是一个完全反对称的拟群,在主对角线上有一个字符(通常为 0)。
Wikipedia 页面给出了 base-10 的表,Python实现给出了base-16的表,但我没有找到 base-32 的示例。有人有适合base-32的桌子吗?
check-digit - 100 美元钞票上的代码生成算法是什么?
我正在设计存储产品的主键。我环顾四周寻找一些关于如何设计 ID 的见解,因为使用自动增量太无聊了。有人知道下面钞票上的代码'KB46279860I'是什么意思吗?
我认为该代码不仅使用自动增量,而且还使用了一些算法,例如校验位等。
谁能给我一些提示,谢谢!!
algorithm - 有没有办法在 Perl 中检查 CUSIP 的数字
我的工作场所不允许我们安装任何模块,因此该选项不适合我。因此决定查看此链接http://en.wikipedia.org/wiki/CUSIP并按照那里的伪代码并尝试在 Perl 中对其进行编码。
我想出了以下几点:
不完全确定为什么它不起作用。