21 integer,
parameter :: i = 1
22 integer,
parameter :: i1b = selected_int_kind(1)
23 integer,
parameter :: i2b = selected_int_kind(2)
24 integer,
parameter :: i4b = selected_int_kind(4)
25 integer,
parameter :: i8b = selected_int_kind(8)
27 integer,
parameter :: r4 = selected_real_kind(6,30)
28 integer,
parameter :: r8 = selected_real_kind(12,300)
30# if defined SUN || defined AIX
31 integer,
parameter :: r16 = selected_real_kind(16,3000)
33 integer,
parameter :: r16 = selected_real_kind(15,3000)
36# if defined SUN || defined AIX
37 integer,
parameter :: r16 = selected_real_kind(16,300)
39 integer,
parameter :: r16 = selected_real_kind(15,300)
44 integer(i1b) :: i01(1)
45 integer(i2b) :: i02(1)
46 integer(i4b) :: i04(1)
47 integer(i8b) :: i08(1)
70 WRITE(*,*)
' Integer representation: bytes bits'
71 WRITE(*,*)
' ======================'
73 WRITE(*,*)
' (kind=1), i1b: ', kind(i01), storage_size(i01)
74 WRITE(*,*)
' (kind=2), i2b: ', kind(i02), storage_size(i02)
75 WRITE(*,*)
' (kind=4), i4b: ', kind(i04), storage_size(i04)
76 WRITE(*,*)
' (kind=8), i8b: ', kind(i08), storage_size(i08)
77 WRITE(*,*)
' default: ', kind(i00), storage_size(i00)
81 WRITE(*,*)
' This computer has the following precision and range'
82 WRITE(*,*)
' ==================================================='
85 WRITE(*,*)
' TINY Intrinsic Function: smallest positive number'
87 WRITE(*,*)
' (kind=4): ', tiny(b04)
88 WRITE(*,*)
' (kind=8): ', tiny(b08)
89 WRITE(*,*)
' (kind=16): ', tiny(b16)
90 WRITE(*,*)
' K( 6,38 ): ', tiny(a04)
91 WRITE(*,*)
' K(12,300): ', tiny(a08)
93 WRITE(*,*)
' K(16,3000): ', tiny(a16)
95 WRITE(*,*)
' K(16,300): ', tiny(a16)
99 WRITE(*,*)
' HUGE Intrinsic Function: largest number'
101 WRITE(*,*)
' (kind=4): ', huge(b04)
102 WRITE(*,*)
' (kind=8): ', huge(b08)
103 WRITE(*,*)
' (kind=16): ', huge(b16)
104 WRITE(*,*)
' K( 6,38 ): ', huge(a04)
105 WRITE(*,*)
' K(12,300): ', huge(a08)
107 WRITE(*,*)
' K(16,3000): ', huge(a16)
109 WRITE(*,*)
' K(16,300): ', huge(a16)
113 WRITE(*,*)
' RANGE Intrinsic Function: decimal exponent range'
115 WRITE(*,*)
' (kind=4): ', range(b04)
116 WRITE(*,*)
' (kind=8): ', range(b08)
117 WRITE(*,*)
' (kind=16): ', range(b16)
118 WRITE(*,*)
' K( 6,38 ): ', range(a04)
119 WRITE(*,*)
' K(12,300): ', range(a08)
121 WRITE(*,*)
' K(16,3000): ', range(a16)
123 WRITE(*,*)
' K(16,300): ', range(a16)
127 WRITE(*,*)
' PRECISION Intrinsic Function: decimal precision'
129 WRITE(*,*)
' (kind=4): ', precision(b04)
130 WRITE(*,*)
' (kind=8): ', precision(b08)
131 WRITE(*,*)
' (kind=16): ', precision(b16)
132 WRITE(*,*)
' K( 6,38 ): ', precision(a04)
133 WRITE(*,*)
' K(12,300): ', precision(a08)
135 WRITE(*,*)
' K(16,3000): ', precision(a16)
137 WRITE(*,*)
' K(16,300): ', precision(a16)
141 WRITE(*,*)
' EPSILON Intrinsic Function: negligible number, zero'
143 WRITE(*,*)
' (kind=4): ', epsilon(b04)
144 WRITE(*,*)
' (kind=8): ', epsilon(b08)
145 WRITE(*,*)
' (kind=16): ', epsilon(b16)
146 WRITE(*,*)
' K( 6,38 ): ', epsilon(a04)
147 WRITE(*,*)
' K(12,300): ', epsilon(a08)
149 WRITE(*,*)
' K(16,3000): ', epsilon(a16)
151 WRITE(*,*)
' K(16,300): ', epsilon(a16)
155 WRITE(*,*)
' Integer (i=1) to Real Conversion:'
157 WRITE(*,*)
' FLOAT(i): ', float(i)
158 WRITE(*,*)
' REAL(i): ', real(i)
159 WRITE(*,*)
' REAL(i,r8): ', real(i,r8)
160 WRITE(*,*)
' REAL(i,r16): ', real(i,r16)
163 WRITE(*,*)
' Values for selected_real_kind parameter:'
165 WRITE(*,*)
' r4: ', r4
166 WRITE(*,*)
' r8: ', r8
167 WRITE(*,*)
' r16: ', r16