SUBROUTINE FINDSIGNIF(isignif,iprecise,value) C FINDSIGNIF FINDS THE NUMBER OF SIGNIFICANT C DIGITS IN A VALUE. c********************************************************** c c Passed Variables: c c isignif - number of significant digits c iprecise - precision of reading (number of digits c to the right of the decimal point) c value - data measurement in question c c********************************************************** c********************************************************** c c Use the absolute value of the data measurement c to find significant figures c c********************************************************** if ( value.lt.0 )then avalue = -value else avalue = value endif if ( iprecise.gt.0 ) then xx=10. do 55 i=2,iprecise+1 55 xx=xx * 10. avalue = avalue + 4.999/xx endif c********************************************************** c c Find the number of digits to the left of the c decimal point c c********************************************************** x = 1. if ( x .gt. avalue ) then isignif = 0 else do 40 n = 1,12 x = x * 10. if ( x .gt. avalue ) then isignif = float(n) goto 4 endif 40 continue 4 continue endif c*********************************************** c c Add the number of significant digits to c the left of the decimal to the number of c significant digits. c c*********************************************** isignif = isignif + iprecise if ( isignif .eq. 0 .and. avalue .gt. -.000001 .and. * avalue .lt. .000001 ) isignif =1 return end