编写java程序来计算校验位数

时间:2017-01-04 22:45:43

标签: java eclipse computer-science check-digit

我有这个java项目(使用eclipse)来计算校验位数。我坚持如何编码这个。

支票有一个校验位,这样它就可以将包括校验位在内的数字的总和除以7.假设总有4位数加上校验位。样本是3875,数字是5,第二次试验问题是5862,需要找到支票号码。我该怎么做呢?我必须输入每个数字并添加它们但我怎么能完成剩下的工作呢?

这是为了进入计算机科学课,所以请不要超级复杂的东西,好像我们没有学习它我不能使用它。

我的老师很不好意思我们没有学到这一点。我已经做了一部分我需要的部分b。谢谢。这是一个地狱澄清的图像。

Question

1 个答案:

答案 0 :(得分:3)

首先,你需要开发一些“程序员逻辑”,这些问题有助于开发它。

  

机票将实际识别号码除以7并将余数分配给校验位。数字可以是任何长度

     

示例:

     

12358#3

让我们打破这个例子:

12358 / 7 = 1765

,提醒为3

让我们对示例中的第二个数字做同样的事情:

45349 / 7 = 45346

,提醒为3

所以,你的逻辑是正确的。

  

美国运通旅行支票有一个数字,以便它可以掩盖数字的总和,包括校验位,可以被7整除。

     

示例:

     

3875#5

在这个问题中,事情有点不同,你需要对数字求和:

3875 -> 3 + 8 + 7 + 5 = 23

现在您需要提醒23 / 7

23 / 7 = 3

提醒您2

7 - 2 = 5

那是你的checkDigit

  

5862

5862 -> 5 + 8 + 6 + 2 = 21

21 / 7 = 3

Reminder = 0

checkDigit = 7 - 0 = 7

所以公式是:

  1. 将数字拆分为数字
  2. 数字总和
  3. 获取总和的mod 7
  4. 休息7 - 提醒