Используя код , выведите на консоль значение мантиссы в двоичном представлении

Используя код, выведите на консоль значение мантиссы в двоичном представлении.

package com.company;

public class Main {

    public static void main(String[] args) {
        double d =75.38;

        String sResult,tResult,d2Result;
        long numberBits=Double.doubleToLongBits(d);
        sResult=Long.toBinaryString(numberBits);

        System.out.println("Представление вещественного числа в формате чисел с плавающей точкой");
        System.out.format("Число: %5.2f\n",d);

        System.out.println("Формат числа с плавающий точкой");
        //ведущий ноль заботливо сокращен системой, поэтому его нужно восстановить
        System.out.println(d>0?"0"+sResult:sResult);

    }
}

Думал вычестить из числа его целую часть

int i=(int)d;
        double d2=d-i;

        System.out.format("Число: %5.2f\n",d2);
        System.out.println(d2Result);

Ответы (1 шт):

Автор решения: Qwertiy

https://ideone.com/cb6Usx

import java.util.*;
import java.lang.*;
import java.io.*;

class Ideone {
  public static void main (String[] args) throws java.lang.Exception {
    for (double d : new double [] {0., 2., -2., 4503599627370496., 9007199254740992., 9007199254740994., 75.38}) {
      String bits = Long.toBinaryString(Double.doubleToLongBits(d));
      bits = "0".repeat(64 - bits.length()) + bits;

      String m = bits.substring(12);

      System.out.println(d);
      System.out.println(bits);
      System.out.println(m);
      System.out.println();
    }
  }
}
→ Ссылка