Interne Dateien erlauben es z.B., INTEGER in CHARACTER umzuwandeln:
PROGRAM schoenes_Format IMPLICIT NONE CHARACTER*80 :: ch INTEGER :: i, n, stellen, iostat REAL :: zahl DO WRITE (*,'(A)',ADVANCE='NO') 'geben Sie eine INTEGER-Zahl ein: ' READ (*,*,IOSTAT=iostat) n IF (iostat == 0) EXIT ENDDO WRITE (ch,*) n ! interne Date 'ch' stellen = LEN_TRIM(ADJUSTL(ch)) WRITE (ch,*) stellen WRITE (*,'(A)') 'diese Zahl ist '//TRIM(ADJUSTL(ch))//'-stellig' DO WRITE (*,'(A)',ADVANCE='NO') 'geben Sie eine REAL-Zahl ein: ' READ (*,*,IOSTAT=iostat) zahl IF (iostat == 0) EXIT END DO WRITE (ch,*) zahl ch = ADJUSTL(ch) DO i = LEN_TRIM(ch), 1, -1 IF (ch(i:i) /= '0') EXIT ch(i:i) = ' ' END DO WRITE (*,'(A)') 'diese Zahl lautet '//TRIM(ch)//' und das ist ok' END