我已从文件中读取了一些二进制表示,然后我将它们相加并尝试查找零的数量和一次出现。 问题是某些数字会丢失或发生其他任何事情,因此总和中的总位数大于零和一的数字之和。 这是我的代码:
val binaryNums = Source.fromFile("path/task2.txt").getLines.map(BigInt(_)).toList
val sumOfBins = binaryNums.sum.toString
println("Zeroes occurrence " + sumOfBins.count(_ == '0'))
println("Ones occurrence " + sumOfBins.count(_ == '1'))
如果你帮我找错了,我将非常感激。
答案 0 :(得分:1)
默认情况下toString
将数字转换为十进制表示。要转换为二进制文件,您必须为toString
提供基数参数:
val sumOfBins = binaryNums.sum.toString(2)