2017-11-06 17 views
-1

파일에서 몇 가지 이진 표현을 읽은 다음이를 요약하여 0과 하나의 발생 수를 찾으려고했습니다. 문제는 일부 숫자가 손실되거나 다른 어떤 일이 발생하기 때문에 합계의 총 자릿수가 0과 1의 합보다 크다는 것입니다. 당신이 실수를 찾기 위해 나에게 도움이 경우0과 1부터 이진수로 스칼라

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')) 

정말 감사 드리겠습니다 : 다음은 내 코드입니다.

업데이트 : 파일 내용은 다음과 같습니다 (각 숫자는 약 800 자리 숫자입니다) enter image description here.

+2

질문이 명확하지 않습니다. 입력 (파일 내용)과 예상 출력의 작은 예를 제공 할 수 있습니까? – jwvh

답변

1

기본적으로 toString은 10 진수로 변환합니다. 이진수로 변환하려면 toString에 기수 인수를 제공해야합니다.

val sumOfBins = binaryNums.sum.toString(2)