【发布时间】:2016-03-09 08:18:20
【问题描述】:
我正在尝试实现 8 位 fletcher 算法。 我写了一段代码,但我不确定我是否正确理解了算法。 这是我的一段代码:
public class TestFletcher {
public static void main(String[] argv) {
String bin = "10010010101111101110101101110011";
char[] cA = bin.toCharArray();
int ckA = 0, ckB = 0;
for (int i = 0; i < cA.length; i++){
ckA += Integer.valueOf(cA[i])/49;
ckB += ckA;
}
System.out.println(ckA);
System.out.println(ckB);
}
我得到的结果是:ckA = 20,ckB = 308。 我认为这不是正确的实现,因为 308 不能用 ckA 和 ckB 的长度的 8 位二进制表示。
谁能解释一下这个问题? 任何帮助,将不胜感激。谢谢。
【问题讨论】:
-
如何在网上搜索测试值和相应的正确结果?至少对于这些测试输入,您可以确定您的实现是否正确
标签: java algorithm checksum 8-bit