FORTRAN 77 Language Reference

Scale Factor (P)

The P edit descriptor scales real input values by a power of 10. It also gives you more control over the significant digit displayed for output values.

The general form is:

[ k ]P

Parameter 

Description 

k

Integer constant, with an optional sign  

k is called the scale factor, and the default value is zero.

Example: I/O statements with scale factors:


	READ ( 1, '( 3P E8.2 )' ) X 
	WRITE ( 1, '( 1P E8.2 )' ) X 

P by itself is equivalent to 0P. It resets the scale factor to the default value 0P. This P by itself is nonstandard.

Scope

The scale factor is reset to zero at the start of execution of each I/O statement. The scale factor can have an effect on D, E, F, and G edit descriptors.

Input

On input, any external datum that does not have an exponent field is divided by 10k before it is stored internally.

Input examples: Showing data, scale factors, and resulting value stored:

Data 

18.63

18.63

18.63E2

18.63

Format 

E8.2

3P E8.2

3P E8.2

-3P E8.2

Memory 

18.63

.01863

18.63E2

18630.

Output

On output, with D, and E descriptors, and with G descriptors if the E editing is required, the internal item gets its basic real constant part multiplied by 10k, and the exponent is reduced by k before it is written out.

On output with the F descriptor and with G descriptors, if the F editing is sufficient, the internal item gets its basic real constant part multiplied by 10k before it is written out.

Output Examples: Showing value stored, scale factors, and resulting output:

Memory 

290.0

290.0

290.0

290.0

Format 

2P E9.3

1P E9.3

-1P E9.3

F9.3

Display 

29.00E+01

2.900E+02

0.029E+04

0.290E+03