Работает превосходно, но выдает ошибку, что не выполнены все требования.
Что я не учел во втором методе?
Спасибо
package com.javarush.task.pro.task09.task0906;
import java.util.regex.Pattern;
/*
Двоичный конвертер
*/
public class Solution {
public static void main(String[] args) {
int decimalNumber = Integer.MAX_VALUE;
System.out.println("Десятичное число " + decimalNumber + " равно двоичному числу " + toBinary(decimalNumber));
String binaryNumber = "001011100";
System.out.println("Двоичное число " + binaryNumber + " равно десятичному числу " + toDecimal(binaryNumber));
}
public static String toBinary(int decimalNumber) {
//напишите тут ваш код
String bin="";
if (decimalNumber<=0)return "";
else{
do{
bin=decimalNumber%2+bin;
decimalNumber/=2;
}while(decimalNumber>=2);
}return 1+bin;
}
public static int toDecimal(String binaryNumber) {
//напишите тут ваш код
if(binaryNumber!=null && binaryNumber.length()>0){
int dec=0;
long binary=Long.parseLong(binaryNumber);
for(int i=0;i<binaryNumber.length();i++){
if(binary%10>1)return 0;
dec=(int)(dec+binary%10*Math.pow(2,i));
binary/=10;
}
return dec;
}
else return 0;
}
}