programando en fortran 90

Download Programando en Fortran 90

Post on 06-Jun-2015

10.090 views

Category:

Documents

2 download

Embed Size (px)

DESCRIPTION

Texto guía para programar en Fortran 90, en el marco del Curso de Análisis Numérico.

TRANSCRIPT

Programando enFortranHansCristianMullerSantaCruz20072IndicegeneralI Fortran 1I. ConceptosBasicos 3I.1. Programas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3I.1.1. Lenguajes de Programacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3I.1.2. Compilacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4I.1.3. Estructura de un Programa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5I.2. Fortran . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6II. ComenzandoaprogramarenFortran 7II.1. Formatos de Escritura de un Programa enFortran . . . . . . . . . . . . . . . . . . . . . . . 7II.1.1. Caracteres permitidos enFortran . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7II.1.2. Formato Libre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7II.1.3. Formato Fijo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9II.2. Compilando enFortran. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10II.2.1. Creando Ejecutables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12II.2.2. Creando codigo objeto y bibliotecas de programas . . . . . . . . . . . . . . . . . . . . 13III. InstruccionesBasicas 15III.1. Variables y Tipos de Dato . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15III.1.1. Los tipos implcitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16III.1.2. Declaracion de Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17III.1.3. Declaracion de constantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17III.1.4. Declaracion de cadenas de caracteres . . . . . . . . . . . . . . . . . . . . . . . . . . . 18III.1.5. Tipos de Reales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18III.1.6. Tipos de Complejo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19III.2. Operaciones elementales. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19III.2.1. Operaciones aritmeticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19III.2.2. Operaciones de comparacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21III.2.3. Operaciones logicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22III.2.4. Funciones intrnsicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23III.2.5. Operaciones con caracteres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24III.3. Instrucciones basicas de lectura y escritura de datos . . . . . . . . . . . . . . . . . . . . . . . 25III.3.1. Escritura sobre la Pantalla . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26III.3.2. Lectura de Datos utilizando el Teclado . . . . . . . . . . . . . . . . . . . . . . . . . . 27III.4. Tipos derivados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28III.5. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30IV.LecturayEscrituradeDatos 31IV.1. Formatos de representacion de datos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31IV.1.1. Formato automatico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31IV.1.2. Formatos preestablecidos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32IV.2. Lectura y Escritura de Datos en Archivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38IV.2.1. Apertura de Archivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38iiiINDICEGENERALIV.2.2. Lectura y Escritura en Archivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41IV.2.3. Otras instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42IV.3. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43V. Tableros,OperacionesconTableros 45V.1. Nociones sobre Tableros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45V.2. Declaracion de Tableros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46V.2.1. Asignacion de valores a tableros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47V.2.2. Declaracion Dinamica de Tableros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49V.3. Asignacion en tableros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50V.3.1. Secciones de Tableros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50V.3.2. Expresiones de asignacion y operaciones aritmeticas . . . . . . . . . . . . . . . . . . . 51V.4. Instrucciones y operaciones exclusivas a Tableros . . . . . . . . . . . . . . . . . . . . . . . . . 52V.4.1. Instrucciones de Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52V.4.2. Funciones Intrnsicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54V.5. Operaciones matriciales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55V.6. Lectura y Escritura de Tableros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57V.7. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57VI.EstructuraseInstruccionesdeControl 59VI.1. Instruccionif . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59VI.2. El ciclodo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60VI.2.1. do innito . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60VI.2.2. do while. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61VI.2.3. do con un n umero jo de iteraciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62VI.3. La estructuraselect case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62VI.4. La instrucciongo to . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63VI.5. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63VII.Procedimientos 65VII.1.Subrutinas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65VII.1.1. Declaracion de los Argumentos Ficticios . . . . . . . . . . . . . . . . . . . . . . . . . . 66VII.1.2. Declaracion de Objetos Locales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70VII.1.3. Subrutinas Internas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71VII.2.Funciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72VII.3.Miscelaneas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74VII.3.1. Argumentos por nombre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74VII.3.2. Argumentos opcionales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75VII.3.3. Recursividad. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76VII.4.Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76VIII. Modulos 77VIII.1. Programando con Modulos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77VIII.2. Datos y Objetos Compartidos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78VIII.3. Procedimientos de modulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80VIII.4. Interfaces genericas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81VIII.4.1.Interfaces genericas con procedimientos de modulo. . . . . . . . . . . . . . . . . . . . 83VIII.5. Interfaz operador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84VIII.6. Interfaz de asignacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85VIII.7. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86IX.Punteros 87INDICEGENERAL iiiII GracandoconPGPLOT 89X. BibliotecaGracaPGPLOT 91X.1. Instalacion depgplot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91X.2. Dispositivos Gracos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92X.3. Ventanas y viewports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93X.4. Primitivas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98X.4.1. Lneas poligonales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99X.4.2. Marcadores Gracos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99X.4.3. Texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100X.4.4. Polgonos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100X.5. Atributos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101X.5.1. Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101X.5.2. Estilos de lneas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102X.5.3. Grosor de lneas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103ivINDICEGENERALIndicedegurasI.1.1. Diagrama en bloques de la operacion de un compilador. . . . . . . . . . . . . . . . . . . . . 4I.1.2. Esquema de la Estructura

Recommended

View more >