# ?lamc5

Called from ?lamc2. Attempts to compute the largest machine floating-point number, without overflow.

## Syntax

call slamc5( beta, p, emin, ieee, emax, rmax)

call dlamc5( beta, p, emin, ieee, emax, rmax)

## Description

The routine ?lamc5 attempts to compute rmax, the largest machine floating-point number, without overflow. It assumes that `emax + abs(emin)` sum approximately to a power of 2. It will fail on machines where this assumption does not hold, for example, the Cyber 205 (`emin = -28625`, `emax = 28718`). It will also fail if the value supplied for emin is too large (that is, too close to zero), probably with overflow.

## Input Parameters

beta

  INTEGER. The base of floating-point arithmetic.

p

  INTEGER. The number of base beta digits in the mantissa of a floating-point value.

emin

  INTEGER. The minimum exponent before (gradual) underflow.

ieee

  LOGICAL. A logical flag specifying whether or not the arithmetic system is thought to comply with the IEEE standard.

## Output Parameters

emax

  INTEGER. The largest exponent before overflow.

rmax

  REAL for slamc5

  DOUBLE PRECISION for dlamc5

  The largest machine floating-point number.

Parent topic: Utility Functions and Routines