set_exponent(x, i) returns the real number whose fractional part is that that of x and whose exponent part is i.
Fortran 95 and later
result = set_exponent(x, i)
x - Shall be of type real.i - Shall be of type integer.The return value is of the same type and kind as x. The real number whose fractional part is that that of x and whose exponent part if i is returned; it is fraction(x) * radix(x)**i.
program test_setexp
  real :: x = 178.1387e-4
  integer :: i = 17
  print *, set_exponent(x, i), fraction(x) * radix(x)**i
end program