Я пытаюсь написать программу, которая принимает неотрицательное восьмеричное число с максимальным значением от 8 до 200000.На входе не будет никаких начальных нулей, а на выходе не должно быть никаких дополнительных начальных нулей.Я не могу представить себе контрольный пример, который бы провалился, но, конечно, это не правильный ответ.Следовательно, я пропускаю крайний случай, интересно, какой.Мне известно, что во время этого преобразования могут возникать некоторые проблемы с «ведущими нулями», но я не до конца понимаю, к чему это приводит, поэтому не могу увидеть проблему / найти решение для нее.
import java.util.*;
import java.io.*;
public class arithmetic{
public static void main(String[] args) throws Exception{
InputStreamReader ir = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(ir);
String octal = br.readLine();
if(octal == null){
System.out.println("0");
return;
}
long decimal = Long.parseLong(octal,8);
System.out.println(Long.toHexString(decimal).toUpperCase());
}
}