C Test Program of Rounding Mode Control with C C for FreeBSD 2.x.x C C Written by Takeshi OGITA. 2000/11/9 C implicit real*8 (a-h, o-z) parameter (nd = 100, n = nd) dimension A(nd), B(nd), X(nd), Y(nd) C ii = 1 do i=1,n ii = -ii X(i) = 1.0*i Y(i) = 1.0*ii end do C call Near do i=1,n A(i) = X(i)/10.0 B(i) = Y(i)/10.0 end do prod = 0.0 do i=1,n prod = prod + A(i)*B(i) end do write(6,1001) prod C call Up do i=1,n A(i) = X(i)/10.0 B(i) = Y(i)/10.0 end do prod = 0.0 do i=1,n prod = prod + A(i)*B(i) end do write(6,1002) prod C call Down do i=1,n A(i) = X(i)/10.0 B(i) = Y(i)/10.0 end do prod = 0.0 do i=1,n prod = prod + A(i)*B(i) end do write(6,1003) prod C call Chop do i=1,n A(i) = X(i)/10.0 B(i) = Y(i)/10.0 end do prod = 0.0 do i=1,n prod = prod + A(i)*B(i) end do write(6,1004) prod C 1000 format(1h , i4, f25.20) 1001 format(1h , 'inner product (Near) = ', f25.20) 1002 format(1h , 'inner product (Up) = ', f25.20) 1003 format(1h , 'inner product (Down) = ', f25.20) 1004 format(1h , 'inner product (Chop) = ', f25.20) C pause stop end C===================================================================== C C <実行結果> C C 未確認