Перед тем как я явно указал компилятору что число int, он ругался на то что получается double собственно package untitled3; import java.util.regex.Pattern; public class Main { public static void main(String[] args) { int decimalNumber = 15; System.out.println("Десятичное число " + decimalNumber + " равно восьмеричному числу " + toOctal(decimalNumber)); int octalNumber = 42; System.out.println("Восьмеричное число " + octalNumber + " равно десятичному числу " + toDecimal(octalNumber)); } public static int toOctal(int decimalNumber) { int octalNumber =00; for (int i = 0; decimalNumber!=0;i++) { octalNumber += (decimalNumber % 8) * Math.pow(10, i); decimalNumber=decimalNumber/8; } return octalNumber; } public static int toDecimal(int octalNumber) { int decimalNumber =0; for (int i=0;octalNumber!=0;i++) { decimalNumber=(int)(decimalNumber+(octalNumber%10) * Math.pow(8,i)); octalNumber=octalNumber/10; } return decimalNumber; } }