Index Page brckti_c

A B C D E F G H I J K L M N O P Q R S T U V W X

Procedure Abstract Required_Reading Keywords Brief_I/O Detailed_Input | Detailed_Output Parameters Exceptions Files Particulars Examples | Restrictions Literature_References Author_and_Institution Version Index_Entries

#### Procedure

       SpiceInt brckti_c ( SpiceInt  number,
                           SpiceInt  end1,
                           SpiceInt  end2   )

#### Abstract

       Bracket a number. That is, given a number and an acceptable
       interval, make sure that the number is contained in the
       interval. (If the number is already in the interval, leave it
        alone. If not, set it to the nearest endpoint of the interval.)

#### Required_Reading

       None.

#### Keywords

       None.

#### Brief_I/O

       VARIABLE  I/O  DESCRIPTION
       --------  ---  --------------------------------------------------
       number     I   Number to be bracketed.
       end1       I   One of the bracketing endpoints for number.
       end2       I   The other bracketing endpoint for number.

       The function returns the bracketed number.

#### Detailed_Input

       number      is the number to be bracketed. That is, the
                   value of number is constrained to lie in the
                   interval bounded by end1 and end2.

       end1,
       end2        are the lower and upper bounds for number. The
                   order is not important.

#### Detailed_Output

       The function returnes the input number, if it was already in the
       interval provided. Otherwise the returned value is the nearest
       bound of the interval.

#### Parameters

       None.

#### Exceptions

       Error free.

#### Files

       None.

#### Particulars

       This routine provides a shorthand notation for code fragments
       like the following

          #include "SpiceUsr.h"
                .
                .
                .
          if ( number < end 1 )
          {
             number = end1;
          }
          else if ( number > end2 )
          {
             number = end2;
          }

       which occur frequently during the processing of program inputs.

#### Examples

        The following illustrates the operation of brckti_c.

              brckti_c (  -1,   1,  10 )  =  1.0;
              brckti_c (  29,   1,  10 )  = 10.0;
              brckti_c (   3, -10,  10 )  =  3.0;
              brckti_c (   3, -10,  -1 )  = -1.0;

        The following code fragment illustrates a typical use for brckti_c.

           #include "SpiceUsr.h"
                .
                .
                .
           /.
           Number of time steps must be in the range 1-10.
           ./

           prompt_c ( "Enter number of time steps > ", 80, nStr );

           prsint_c ( nStr, &n );

           nstep = brckti_c ( n, 1, 10 );

#### Restrictions

       None.

#### Literature_References

       None.

#### Author_and_Institution

       N.J. Bachman    (JPL)
       W.L. Taber      (JPL)
       I.M. Underwood  (JPL)

#### Version

       -CSPICE Version 1.0.1, 11-NOV-2006 (EDW)

          Added "None." text to Keywords section, required for
          API doc script (cspicehtml.pl) integrity checks.

       -CSPICE Version 1.0.0, 16-AUG-1999 (NJB) (WLT) (IMU)

#### Index_Entries

       bracket an integer value within an interval

#### Link to routine brckti_c source file brckti_c.c

    Wed Apr  5 17:54:29 2017