SlideShare una empresa de Scribd logo
1 de 16
FORTRAN Lenguaje de propósito general, principalmente orientado a la computación matemática, por ejemplo en ingeniería. 28/09/2011 1°"B" IET  Eric Avendaño  /  Obed Ramirez
Primer lenguaje de alto nivel que salió al mercado.  Este lenguaje procedural fue el primero de alto nivel (1957) Desarrollado por IBM para el IBM 704. Orientado a la eficiencia en la ejecución. Se creó la definición estándar del lenguaje en el 66. versiones: Fortran 66 Fortran 77 Fortran 90 (95) 28/09/2011 1°"B" IET  Eric Avendaño  /  Obed Ramirez
Ejemplo 28/09/2011 1°"B" IET  Eric Avendaño  /  Obed Ramirez
Características Tipos de datos soportados: Numéricos (enteros, reales, complejos y doble precisión). Booleanos (logical) (AND, NOT, OR, XOR) Arreglos Cadenas de caracteres Archivos 28/09/2011 1°"B" IET  Eric Avendaño  /  Obed Ramirez
FORTRAN 90 ya es estructurado, y no requiere sentencias GOTO. Sólo admite dos ámbitos para las variables: local y global. 28/09/2011 1°"B" IET  Eric Avendaño  /  Obed Ramirez
Variables & Constantes FORTRAN no es sensible a mayúsculas y minúsculas. Los nombre de variables tienen de 6 a 31 caracteres máximo y deben comenzar por una letra. Los blancos son significativos. Declaración explicita de variables. Enteras (I-N), el resto reales. (se modifica con IMPLICIT). Punteros: en los primeros FORTRAN no hay punteros y todas las variables se almacenan en memoria estática. En FORTRAN 90 se declaran INTEGER, POINTER::P. Para memoria dinámica ALLOCATE y DEALLOCATE  28/09/2011 1°"B" IET  Eric Avendaño  /  Obed Ramirez
Tipos de datos FORTRAN no es sensible a mayúsculas y minúsculas. Los nombre de variables tienen de 6 a 31 caracteres máximo y deben comenzar por una letra. Los blancos son significativos. Declaración explicita de variables. Enteras (I-N), el resto reales. (se modifica con IMPLICIT). Punteros: en los primeros FORTRAN no hay punteros y todas las variables se almacenan en memoria estática. En FORTRAN 90 se declaran INTEGER, POINTER::P. Para memoria dinámica ALLOCATE y DEALLOCATE  28/09/2011 1°"B" IET  Eric Avendaño  /  Obed Ramirez
Control de secuencia EL conjunto de estructuras de control es limitado: Expresiones, prioridad de operadores Enunciados Asignación, cuando se hace entre cadenas hay ajuste de tamaño con blancos o truncamiento. Condicional. Permite IF ELSE IF... Para selección múltiple SELECT CASE CASE.....CASE DEFAULT.... END SELECT Iteración. DO....END DO Nulo, se usa solo para la etiqueta. CONTINUE. Control de subprogramas. CALL invoca al subprograma y RETURN devuelve un valor al programa llamante. Construcciones propensas a error: GOTO. 28/09/2011 1°"B" IET  Eric Avendaño  /  Obed Ramirez
Entrada y salida Tipos de archivos: Secuenciales De acceso directo Comandos: READ, WRITE, PRINT, OPEN , CLASE, INQUIRE (propiedades o estado del archivo) REWIND y ENDFILE (para ubicar el puntero del fichero). Para el tratamiento de excepciones en las sentencias READ/WRITE se puede introducir la posición de la rutina de dicho tratamiento (ERR=90). 1°"B" IET  Eric Avendaño  /  Obed Ramirez 28/09/2011
Subprogramas Hay tres tipos de subprogramas: Function, devuelven un solo valor de tipo numérico, lógico o cadena de caracteres. Subroutine, devuelve valores a través de variables no locales COMMON. Función de enunciado, permite calcular una sola expresión aritmética o lógica.  FN(X,Y)=SIN(X)**2-COS(Y)**2 Gestión de almacenamiento. Las variables son locales o globales (COMMON) Recursividad: RECURSIVE FUNCTION FACTORIAL(X) Parámetros de subprograma. Paso por referencia 28/09/2011 1°"B" IET  Eric Avendaño  /  Obed Ramirez
Abstracción y encapsulación. Evaluación del lenguaje La abstracción es posible mediante los subprogramas y el uso de variables COMMON, aunque su uso es propenso a errores. FORTRAN sigue siendo utilizado en el ámbito científico y es muy eficiente realizando cálculos.  La estructura del programa suele ser dificil de entender. En FORTRAN 90 se incluye la recursividad y la memoria dinámica. Las etiquetas de las sentencias ya no son necesarias, ni el GOTO, pues se ha transformado en un lenguaje estructurado. El aspecto de los programas sigue siendo de procesamiento por lotes. 28/09/2011 1°"B" IET  Eric Avendaño  /  Obed Ramirez
VENTAJAS     +es un lenguaje muy simple + es fácil de aprender + se diseñó para trabajar con expresiones matemáticas y Matrices +es todavía uno de los lenguajes más usados para cálculo numérico existen cientos de librerías probadas y eficientes+ los compiladores tienen más de 50 años de experiencia para optimizar el tiempo de cálculo de los do-loops 28/09/2011 1°"B" IET  Eric Avendaño  /  Obed Ramirez
DESVENTAJAS     - no existen clases o estructuras - no se puede hacer una reserva de memoria dinámica - es un lenguaje primitivo para proceso de textos, listas y estructuras de datos más complejas -puede haber mayor dificultad en el rastreo de la lógica de un programa en el código Fortran que en algunos otros lenguajes de alto nivel. 28/09/2011 1°"B" IET  Eric Avendaño  /  Obed Ramirez
Plataformas 28/09/2011 1°"B" IET  Eric Avendaño  /  Obed Ramirez
http://www.addlink.es/productos.asp?pid=329 http://www.desarrolloweb.com/articulos/1550.php http://lenguaje-fortran.wikispaces.com/caracter%C3%ADsticas 28/09/2011 1°"B" IET  Eric Avendaño  /  Obed Ramirez  / Emanuel Sánchez CARTA DE PRESENTACION:
Ejemplo 28/09/2011 1°"B" IET  Eric Avendaño  /  Obed Ramirez

Más contenido relacionado

La actualidad más candente

Ejercicios de estructura selectiva anidadas
Ejercicios de estructura selectiva anidadasEjercicios de estructura selectiva anidadas
Ejercicios de estructura selectiva anidadas
Alejandro Pacheco
 
Lenguaje Ensamblador
Lenguaje EnsambladorLenguaje Ensamblador
Lenguaje Ensamblador
gbermeo
 
Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)
YJGG
 
Lenguaje ensamblador basico
Lenguaje ensamblador basicoLenguaje ensamblador basico
Lenguaje ensamblador basico
Gustavo Davila
 
Categorías de software de aplicación
Categorías de software de aplicaciónCategorías de software de aplicación
Categorías de software de aplicación
quezadatos
 
Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico
maryr_
 
Lenguajes aceptados por una maquina de turing
Lenguajes aceptados por una maquina de turingLenguajes aceptados por una maquina de turing
Lenguajes aceptados por una maquina de turing
vmtorrealba
 

La actualidad más candente (20)

Inteligencia artificial y las redes neuronales
Inteligencia artificial y las redes neuronalesInteligencia artificial y las redes neuronales
Inteligencia artificial y las redes neuronales
 
Ejercicios de estructura selectiva anidadas
Ejercicios de estructura selectiva anidadasEjercicios de estructura selectiva anidadas
Ejercicios de estructura selectiva anidadas
 
Tasm
TasmTasm
Tasm
 
Analizador léxico
Analizador léxicoAnalizador léxico
Analizador léxico
 
Lenguaje Ensamblador
Lenguaje EnsambladorLenguaje Ensamblador
Lenguaje Ensamblador
 
Vuelta Atras
Vuelta AtrasVuelta Atras
Vuelta Atras
 
Fundamentos de Programacion - Unidad 1 conceptos basicos
Fundamentos de Programacion - Unidad 1 conceptos basicosFundamentos de Programacion - Unidad 1 conceptos basicos
Fundamentos de Programacion - Unidad 1 conceptos basicos
 
Automata de Pila y Maquina de Turing No Deterministas
Automata de Pila y Maquina de Turing No DeterministasAutomata de Pila y Maquina de Turing No Deterministas
Automata de Pila y Maquina de Turing No Deterministas
 
Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)
 
Lenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretesLenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretes
 
Lenguaje ensamblador basico
Lenguaje ensamblador basicoLenguaje ensamblador basico
Lenguaje ensamblador basico
 
Gramática Libre de Contexto
Gramática Libre de ContextoGramática Libre de Contexto
Gramática Libre de Contexto
 
Categorías de software de aplicación
Categorías de software de aplicaciónCategorías de software de aplicación
Categorías de software de aplicación
 
Elementos basicos de un programa
Elementos basicos de un programaElementos basicos de un programa
Elementos basicos de un programa
 
instruccion de control
instruccion de controlinstruccion de control
instruccion de control
 
Estándares para el Modelado de Procesos de Negocios
Estándares para el Modelado de Procesos de NegociosEstándares para el Modelado de Procesos de Negocios
Estándares para el Modelado de Procesos de Negocios
 
Cuadro comparativo lenguajes
Cuadro comparativo lenguajesCuadro comparativo lenguajes
Cuadro comparativo lenguajes
 
Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico
 
Teoría de complejidad computacional (tcc).pptx
Teoría de complejidad computacional (tcc).pptxTeoría de complejidad computacional (tcc).pptx
Teoría de complejidad computacional (tcc).pptx
 
Lenguajes aceptados por una maquina de turing
Lenguajes aceptados por una maquina de turingLenguajes aceptados por una maquina de turing
Lenguajes aceptados por una maquina de turing
 

Destacado

5 características del lenguaje cobol
5 características del lenguaje cobol5 características del lenguaje cobol
5 características del lenguaje cobol
Gili Freire
 
Vibraciones mecánicas aplicación instrumento sísmico usando FORTRAN 90
Vibraciones mecánicas aplicación instrumento sísmico usando FORTRAN 90Vibraciones mecánicas aplicación instrumento sísmico usando FORTRAN 90
Vibraciones mecánicas aplicación instrumento sísmico usando FORTRAN 90
Marco Antonio
 
Mi Lenguaje de Programacion
Mi Lenguaje de ProgramacionMi Lenguaje de Programacion
Mi Lenguaje de Programacion
mel_15
 
Historia Complex
Historia  ComplexHistoria  Complex
Historia Complex
suhuer
 
Teoría de un método Iterativo
Teoría de un método IterativoTeoría de un método Iterativo
Teoría de un método Iterativo
Erik Orozco Valles
 

Destacado (20)

5 características del lenguaje cobol
5 características del lenguaje cobol5 características del lenguaje cobol
5 características del lenguaje cobol
 
Lenguaje de programación: Pascal
Lenguaje de programación: PascalLenguaje de programación: Pascal
Lenguaje de programación: Pascal
 
Fortran
FortranFortran
Fortran
 
Tipos de lenguaje de programacion
Tipos de lenguaje de programacionTipos de lenguaje de programacion
Tipos de lenguaje de programacion
 
Manual fortran
Manual fortranManual fortran
Manual fortran
 
Lisp
LispLisp
Lisp
 
Consulta fortran
Consulta fortranConsulta fortran
Consulta fortran
 
Mapa conceptual de sistema operativo y lenguaje de programacion
Mapa conceptual de sistema operativo y lenguaje de programacionMapa conceptual de sistema operativo y lenguaje de programacion
Mapa conceptual de sistema operativo y lenguaje de programacion
 
Logo lenguaje de Programación
Logo lenguaje de ProgramaciónLogo lenguaje de Programación
Logo lenguaje de Programación
 
Vibraciones mecánicas aplicación instrumento sísmico usando FORTRAN 90
Vibraciones mecánicas aplicación instrumento sísmico usando FORTRAN 90Vibraciones mecánicas aplicación instrumento sísmico usando FORTRAN 90
Vibraciones mecánicas aplicación instrumento sísmico usando FORTRAN 90
 
Códigomatlabgaussseidel
CódigomatlabgaussseidelCódigomatlabgaussseidel
Códigomatlabgaussseidel
 
Mi Lenguaje de Programacion
Mi Lenguaje de ProgramacionMi Lenguaje de Programacion
Mi Lenguaje de Programacion
 
Jacobi y Gauss Seidel
Jacobi y Gauss SeidelJacobi y Gauss Seidel
Jacobi y Gauss Seidel
 
Práctica de métodos numéricos
Práctica de métodos numéricosPráctica de métodos numéricos
Práctica de métodos numéricos
 
Curso de-fortran
Curso de-fortranCurso de-fortran
Curso de-fortran
 
MÉTODO ITERATIVO DE GAUSS_SEIDEL USANDO FORTRAN 90, MATLAB Y SCILAB
MÉTODO ITERATIVO DE GAUSS_SEIDEL USANDO FORTRAN 90, MATLAB Y SCILABMÉTODO ITERATIVO DE GAUSS_SEIDEL USANDO FORTRAN 90, MATLAB Y SCILAB
MÉTODO ITERATIVO DE GAUSS_SEIDEL USANDO FORTRAN 90, MATLAB Y SCILAB
 
Historia Complex
Historia  ComplexHistoria  Complex
Historia Complex
 
Historia de los compiladores--Fortran pascal c
Historia de los compiladores--Fortran pascal cHistoria de los compiladores--Fortran pascal c
Historia de los compiladores--Fortran pascal c
 
Matlab introducción
Matlab   introducciónMatlab   introducción
Matlab introducción
 
Teoría de un método Iterativo
Teoría de un método IterativoTeoría de un método Iterativo
Teoría de un método Iterativo
 

Similar a Lenguaje de programación Fortrar

Compiladores fortran,c y pascal
Compiladores fortran,c y pascalCompiladores fortran,c y pascal
Compiladores fortran,c y pascal
Carlos Rivadeneira
 
Compilador de fortran h para c y pascal
Compilador de fortran h para c y pascalCompilador de fortran h para c y pascal
Compilador de fortran h para c y pascal
Grace Laguna
 
Lenguaje Ensamblador00
Lenguaje Ensamblador00Lenguaje Ensamblador00
Lenguaje Ensamblador00
Car_00_01
 
Lección 1 Introducción a los Lenguajes de Programación
Lección 1   Introducción a los Lenguajes de ProgramaciónLección 1   Introducción a los Lenguajes de Programación
Lección 1 Introducción a los Lenguajes de Programación
ocasas
 

Similar a Lenguaje de programación Fortrar (20)

Compiladores fortran,c y pascal
Compiladores fortran,c y pascalCompiladores fortran,c y pascal
Compiladores fortran,c y pascal
 
Lenguajes y programación de robots IPN 2
Lenguajes y programación de robots IPN 2Lenguajes y programación de robots IPN 2
Lenguajes y programación de robots IPN 2
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
Compilador de fortran h para c y pascal
Compilador de fortran h para c y pascalCompilador de fortran h para c y pascal
Compilador de fortran h para c y pascal
 
Semana 3
Semana 3Semana 3
Semana 3
 
Programacion
ProgramacionProgramacion
Programacion
 
Lenguaje c
Lenguaje cLenguaje c
Lenguaje c
 
TRABAJO FINAL PROGRAMACIÓN.pdf
TRABAJO FINAL PROGRAMACIÓN.pdfTRABAJO FINAL PROGRAMACIÓN.pdf
TRABAJO FINAL PROGRAMACIÓN.pdf
 
Unmsm02 2008
Unmsm02 2008Unmsm02 2008
Unmsm02 2008
 
Lenguaje Ensamblador00
Lenguaje Ensamblador00Lenguaje Ensamblador00
Lenguaje Ensamblador00
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
Lenguaje c
Lenguaje c Lenguaje c
Lenguaje c
 
Compiladores deber 5
Compiladores deber 5Compiladores deber 5
Compiladores deber 5
 
Lenguajes
LenguajesLenguajes
Lenguajes
 
Lenguajes
LenguajesLenguajes
Lenguajes
 
lenguaje c.ppt
lenguaje c.pptlenguaje c.ppt
lenguaje c.ppt
 
Lenguajes de programación parte i.4
Lenguajes de programación parte i.4Lenguajes de programación parte i.4
Lenguajes de programación parte i.4
 
Fortran Alcubierre.pdf
Fortran Alcubierre.pdfFortran Alcubierre.pdf
Fortran Alcubierre.pdf
 
Lección 1 Introducción a los Lenguajes de Programación
Lección 1   Introducción a los Lenguajes de ProgramaciónLección 1   Introducción a los Lenguajes de Programación
Lección 1 Introducción a los Lenguajes de Programación
 
Introducción a la informática
Introducción a la informáticaIntroducción a la informática
Introducción a la informática
 

Más de Eric Avendaño (8)

Transformada z
Transformada zTransformada z
Transformada z
 
Controlabilidad
ControlabilidadControlabilidad
Controlabilidad
 
Rotacional de un campo vectorial en maple 12
Rotacional de un campo vectorial en maple 12Rotacional de un campo vectorial en maple 12
Rotacional de un campo vectorial en maple 12
 
Led (light-emitting diode)
Led (light-emitting diode)Led (light-emitting diode)
Led (light-emitting diode)
 
Uso del multimetro
Uso del multimetroUso del multimetro
Uso del multimetro
 
Motores - de CC, CA, a pasos.
Motores - de CC, CA, a pasos.Motores - de CC, CA, a pasos.
Motores - de CC, CA, a pasos.
 
Ley de gauss y los conductores
Ley de gauss y los conductoresLey de gauss y los conductores
Ley de gauss y los conductores
 
F O R T R A N
F O R T R A NF O R T R A N
F O R T R A N
 

Último

6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria
Wilian24
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
EliaHernndez7
 

Último (20)

6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria
 
Linea del tiempo - Filosofos Cristianos.docx
Linea del tiempo - Filosofos Cristianos.docxLinea del tiempo - Filosofos Cristianos.docx
Linea del tiempo - Filosofos Cristianos.docx
 
Power Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptxPower Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptx
 
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdfPlan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
 
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
 
Supuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docxSupuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docx
 
Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024
 
Desarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por ValoresDesarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por Valores
 
Factores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdfFactores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdf
 
FUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
FUERZA Y MOVIMIENTO ciencias cuarto basico.pptFUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
FUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
 
AEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptxAEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptx
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxLA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
 
PP_Comunicacion en Salud: Objetivación de signos y síntomas
PP_Comunicacion en Salud: Objetivación de signos y síntomasPP_Comunicacion en Salud: Objetivación de signos y síntomas
PP_Comunicacion en Salud: Objetivación de signos y síntomas
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
 
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADOTIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
 
Los dos testigos. Testifican de la Verdad
Los dos testigos. Testifican de la VerdadLos dos testigos. Testifican de la Verdad
Los dos testigos. Testifican de la Verdad
 
Tema 11. Dinámica de la hidrosfera 2024
Tema 11.  Dinámica de la hidrosfera 2024Tema 11.  Dinámica de la hidrosfera 2024
Tema 11. Dinámica de la hidrosfera 2024
 
Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024
 

Lenguaje de programación Fortrar

  • 1. FORTRAN Lenguaje de propósito general, principalmente orientado a la computación matemática, por ejemplo en ingeniería. 28/09/2011 1°"B" IET Eric Avendaño / Obed Ramirez
  • 2. Primer lenguaje de alto nivel que salió al mercado. Este lenguaje procedural fue el primero de alto nivel (1957) Desarrollado por IBM para el IBM 704. Orientado a la eficiencia en la ejecución. Se creó la definición estándar del lenguaje en el 66. versiones: Fortran 66 Fortran 77 Fortran 90 (95) 28/09/2011 1°"B" IET Eric Avendaño / Obed Ramirez
  • 3. Ejemplo 28/09/2011 1°"B" IET Eric Avendaño / Obed Ramirez
  • 4. Características Tipos de datos soportados: Numéricos (enteros, reales, complejos y doble precisión). Booleanos (logical) (AND, NOT, OR, XOR) Arreglos Cadenas de caracteres Archivos 28/09/2011 1°"B" IET Eric Avendaño / Obed Ramirez
  • 5. FORTRAN 90 ya es estructurado, y no requiere sentencias GOTO. Sólo admite dos ámbitos para las variables: local y global. 28/09/2011 1°"B" IET Eric Avendaño / Obed Ramirez
  • 6. Variables & Constantes FORTRAN no es sensible a mayúsculas y minúsculas. Los nombre de variables tienen de 6 a 31 caracteres máximo y deben comenzar por una letra. Los blancos son significativos. Declaración explicita de variables. Enteras (I-N), el resto reales. (se modifica con IMPLICIT). Punteros: en los primeros FORTRAN no hay punteros y todas las variables se almacenan en memoria estática. En FORTRAN 90 se declaran INTEGER, POINTER::P. Para memoria dinámica ALLOCATE y DEALLOCATE 28/09/2011 1°"B" IET Eric Avendaño / Obed Ramirez
  • 7. Tipos de datos FORTRAN no es sensible a mayúsculas y minúsculas. Los nombre de variables tienen de 6 a 31 caracteres máximo y deben comenzar por una letra. Los blancos son significativos. Declaración explicita de variables. Enteras (I-N), el resto reales. (se modifica con IMPLICIT). Punteros: en los primeros FORTRAN no hay punteros y todas las variables se almacenan en memoria estática. En FORTRAN 90 se declaran INTEGER, POINTER::P. Para memoria dinámica ALLOCATE y DEALLOCATE 28/09/2011 1°"B" IET Eric Avendaño / Obed Ramirez
  • 8. Control de secuencia EL conjunto de estructuras de control es limitado: Expresiones, prioridad de operadores Enunciados Asignación, cuando se hace entre cadenas hay ajuste de tamaño con blancos o truncamiento. Condicional. Permite IF ELSE IF... Para selección múltiple SELECT CASE CASE.....CASE DEFAULT.... END SELECT Iteración. DO....END DO Nulo, se usa solo para la etiqueta. CONTINUE. Control de subprogramas. CALL invoca al subprograma y RETURN devuelve un valor al programa llamante. Construcciones propensas a error: GOTO. 28/09/2011 1°"B" IET Eric Avendaño / Obed Ramirez
  • 9. Entrada y salida Tipos de archivos: Secuenciales De acceso directo Comandos: READ, WRITE, PRINT, OPEN , CLASE, INQUIRE (propiedades o estado del archivo) REWIND y ENDFILE (para ubicar el puntero del fichero). Para el tratamiento de excepciones en las sentencias READ/WRITE se puede introducir la posición de la rutina de dicho tratamiento (ERR=90). 1°"B" IET Eric Avendaño / Obed Ramirez 28/09/2011
  • 10. Subprogramas Hay tres tipos de subprogramas: Function, devuelven un solo valor de tipo numérico, lógico o cadena de caracteres. Subroutine, devuelve valores a través de variables no locales COMMON. Función de enunciado, permite calcular una sola expresión aritmética o lógica. FN(X,Y)=SIN(X)**2-COS(Y)**2 Gestión de almacenamiento. Las variables son locales o globales (COMMON) Recursividad: RECURSIVE FUNCTION FACTORIAL(X) Parámetros de subprograma. Paso por referencia 28/09/2011 1°"B" IET Eric Avendaño / Obed Ramirez
  • 11. Abstracción y encapsulación. Evaluación del lenguaje La abstracción es posible mediante los subprogramas y el uso de variables COMMON, aunque su uso es propenso a errores. FORTRAN sigue siendo utilizado en el ámbito científico y es muy eficiente realizando cálculos. La estructura del programa suele ser dificil de entender. En FORTRAN 90 se incluye la recursividad y la memoria dinámica. Las etiquetas de las sentencias ya no son necesarias, ni el GOTO, pues se ha transformado en un lenguaje estructurado. El aspecto de los programas sigue siendo de procesamiento por lotes. 28/09/2011 1°"B" IET Eric Avendaño / Obed Ramirez
  • 12. VENTAJAS +es un lenguaje muy simple + es fácil de aprender + se diseñó para trabajar con expresiones matemáticas y Matrices +es todavía uno de los lenguajes más usados para cálculo numérico existen cientos de librerías probadas y eficientes+ los compiladores tienen más de 50 años de experiencia para optimizar el tiempo de cálculo de los do-loops 28/09/2011 1°"B" IET Eric Avendaño / Obed Ramirez
  • 13. DESVENTAJAS - no existen clases o estructuras - no se puede hacer una reserva de memoria dinámica - es un lenguaje primitivo para proceso de textos, listas y estructuras de datos más complejas -puede haber mayor dificultad en el rastreo de la lógica de un programa en el código Fortran que en algunos otros lenguajes de alto nivel. 28/09/2011 1°"B" IET Eric Avendaño / Obed Ramirez
  • 14. Plataformas 28/09/2011 1°"B" IET Eric Avendaño / Obed Ramirez
  • 16. Ejemplo 28/09/2011 1°"B" IET Eric Avendaño / Obed Ramirez