/
githubmirror
/
interviews
Обзор
Документация
Войти
/
githubmirror
/
interviews
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
cracking-the-coding-interview/chapter-five-bit-manipulation/BinaryRepresentation.java
31 строка
724 B
Kevin Naughton Jr
finish renaming files and directories
27 мар 2018, 19:52
27 мар 2018, 19:52
ec6dfb5
Код
Авторство
О чём код?
/* given a real number between 0 and 1 (e.g., 0.72) that is passed in as a double, print * the binary representation. If the number cannot be represented accurately in binary * with at most 32 characters, print "ERROR" */ public class BinaryRepresentation { public static String printBinary(double num) { if(num >= 1 || num <= 0) { return "ERROR"; } StrinBuilder binary = new StringBuilder(); binary.append("."); while(num > 0) { /* setting a limit on length: 32 characters */ if(binary.length() >= 32) { return "ERROR"; } double r = num * 2; if(r >= 1) { binary.append(1); num = r - 1; } else { binary.append(0); num = r; } } return binary.toString(); } }