Entradas

Mostrando entradas de febrero, 2019

Usando exit y cycle en do anidados Fortran

Es interesante ver que cycle y exit pueden ser usados para saltar entre do anidados PROGRAM test_cycle_2 INTEGER :: i, j, product outer: DO i = 1 , 3 inner: DO j = 1 , 3 IF ( j == 2 ) CYCLE outer product = i * j WRITE ( * , * ) i, ' * ' , j, ' = ' , product END DO inner END DO outer END PROGRAM test_cycle_2 que produce            1  *            1  =            1            2  *            1  =            2            3  *            1  =         ...

Formatos y disruptores en Fortran

program t implicit none ! c Column number ! d Number of digits to right of decimal place for real input or output ! m Minimum number of digits to be displayed ! n Number of spaces to skip ! r Repeat count—the number of times to use a descriptor or group of descriptors ! w Field width—the number of characters to use for the input or output ! Integer: rIw or rIw.m INTEGER :: index = - 12 , junk = 4 , number = - 12345 WRITE (*, 100 ) index, junk, number 100 FORMAT (I0, 1X ,I0, 1X ,I0) !will produce the output - 12 4 - 12345 ! Real rFw.d REAL :: a = - 12.3 , b = . 123 , c = 123.456 WRITE (*, 200 ) a, b, c WRITE (*, 210 ) a, b, c 200 FORMAT ( 2F6 . 3 , F8. 3 ) !will produce the output                 ****** 0.123 123.456 ! Exponente rEw.d w ≥ d +7 ! expresses the number as a value between 0.1 and 1.0 times a power of 10. REAL :: a = 1.2346E6 , b = 0...

Fortran: Colocar nombres a los do anidados

Siempre hay que colocar nombre a los do anidados. Este ejemplo es cn Fortran 2008, y lo que quiero decir, es que no se si enlos Fortran antiguos se puede. Pagina 150 libro Fortran for Scientists 2018 - Chapman program nested integer :: i, j, product externo: do i = 1 , 3 interno: do j = 1 , 3 product = i * j write ( * , * ) i, ' * ' , j, ' = ' , product end do interno end do externo ! iempre hay que colocar nomres a los dos que estan NESTED ! Ideal para latitud y longitud end program nested