Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- if (inputRadix == targetRadix) {
- System.out.println("Converted number: " + inputNumber);;
- } else if (inputNumber.contains(".")) {
- String[] splitNumber = inputNumber.split("\\.");
- var integralPart = splitNumber[0];
- var fractionalPart = splitNumber[1];
- var integralPartConverted = Integer.toString(Integer.parseInt(integralPart, inputRadix), targetRadix).toUpperCase();
- var fractionalPartArr = fractionalPart.toCharArray();
- double fractionalPartConvertedToDecimal;
- if (inputRadix != 10) {
- fractionalPartConvertedToDecimal = 0.0;
- for (int i = 0; i < fractionalPartArr.length; i++) {
- fractionalPartConvertedToDecimal += digits.get(Character.toString(fractionalPartArr[i])) * Math.pow(inputRadix, -i-1);
- }
- } else {
- fractionalPartConvertedToDecimal = Double.parseDouble("0." + fractionalPart);
- }
- var fractionalPartConverted = new StringBuilder();
- double tmp = fractionalPartConvertedToDecimal;
- if (targetRadix != 10) {
- for (int i = 0; i < 6; i++) {
- tmp *= targetRadix;
- var resultDigit = (int)tmp;
- tmp -= resultDigit;
- fractionalPartConverted.append(Integer.toString(Integer.parseInt(String.valueOf(resultDigit), 10), targetRadix).toUpperCase());
- }
- } else {
- fractionalPartConverted.append(fractionalPartConvertedToDecimal);
- }
- System.out.println("Converted number: " + integralPartConverted + "." + fractionalPartConverted);
- } else {
- String converted = Integer.toString(Integer.parseInt(inputNumber, inputRadix), targetRadix).toUpperCase();
- System.out.println("Converted number: " + converted);
- }
Add Comment
Please, Sign In to add comment