Vous êtes sur la page 1sur 11

LENGUAJE DE PROGRAMACION FORTRAN 90 PARA WINDOWS

1.- Introduccin:
Un conjunto particular de reglas para codificar las instrucciones en una computadora se llama lenguaje de programacin.
Hay muchos lenguajes tales como por ejemplo Fortran, LENGUAJE BASIC, Pascal y C++. Fortran, es en espaol:
TRADUCCIN DE FORMULAS, es el primer lenguaje de programacin de " alto nivel". Este lenguaje Hizo lo posible en
usar nombres simblicos para representar cantidades matemticas, y para escribir frmulas matemticas en una forma
razonablemente inteligible, tal como X = B/(2*A). La idea del Fortran se propuso 1953 por John Backus, en Nueva York, y
el primer programa en Fortran ejecutado fue en Abril 1957.
2.- Definicin
Es un lenguaje de estilo procedural, fue el primer lenguaje de programacin de alto nivel, desarrollado por IBM en 1957
para el equipo IBM 704. Est fuertemente orientado al clculo y por ende es uno de los de mayor eficiencia en la
ejecucin.
La definicin estndar del lenguaje se estableci en 1966. Algunas otras versiones subsiguientes fueron:

FORTRAN IV

FORTRAN 80

FORTRAN 77

FORTRAN 90

FORTRAN 95

FORTRAN 2003
3.- Importancia del uso de este lenguaje de programacin.
Fortran 90 ha sido ampliamente adoptado por la comunidad cientfica para escribir aplicaciones de clculos intensivos.
La inclusin en el lenguaje de la aritmtica de nmeros complejos ampli la gama de aplicaciones para las cuales el
lenguaje se adapta especialmente; muchas tcnicas de compilacin de lenguajes se han implementado para mejorar la
calidad del cdigo generado por los compiladores de Fortran en especial la versin Fortran 90 y 95.
4.- Caractersticas del Fortran 90
Fortran 90 provee todos los aspectos originales del LENGUAJE FORTRAN 77, y agrega las extensiones y flexibilidad de
nuevos idiomas. Algunos aspectos de la norma ms antiguos se han declarado obsoleto, sin embargo el Fortran
PowerStation reconoce los mtodos ms antiguos.
Fortran 90 agrega siete mejoras importantes respecto al LENGUAJE FORTRAN 77:
Mejoras en lo numrico - capacidad de cmputo
Orden en las operaciones
Especificaciones de los datos intrnsecos y precisin
Declaracin de datos definidos por el usuario
Mdulos para contener datos y los procedimientos usados por varias unidades de programa
Indicadores
Aprovisionamiento para la evolucin de idioma
5.- Estructura de un programa en Fortran y las declaraciones sentencias
En este tem, se tendr en cuenta las partes que contiene un programa en Fortran y adems a escribir en forma
detallada los programas, para resolver problemas simples.
Hay dos requerimientos esenciales:
1. Deben aprenderse las reglas exactas de las instrucciones para codificar el programa
2. Un planeamiento lgico para resolver el problema a desarrollar. (Diagramas de flujo, pseudocdigos)
5.1 Estructura de un programa
La estructura general de un programa simple en Fortran es como se indica a continuacin (los argumentos entre
corchetes son opcionales):

[PROGRAM nombre_del_programa]
[ declaraciones de sentencias]
[ declaraciones ejecutables]
END [PROGRAM [nombre_del_programa]]
Como usted puede ver, la declaracin obligatoria en un programa en Fortran es END esta declaracin informa el
compilador que no hay mas sentencias en Fortran por compilar.
La sentencia END [PROGRAM [nombre_del_programa]] significa que el nombre de programa puede omitirse desde la
declaracin END, pero que si hay un nombre de programa, la sentencia PROGRAM no puede omitir dicho nombre.
5.2- Las declaraciones (sentencias) en un programa:
Las declaraciones forman la base de cualquier programa en Fortran, y puede contener desde 0 a 132 caracteres (una
declaracin puede ser vaca; las declaraciones vacas se realizan para hacer un programa ms legible por secciones
lgicas)
Todas las declaraciones del Fortran, exceptuando la declaracin de asignacin (por ejemplo. EQUILIBRIO = 1000),
comienzan con una letra. Ejemplo END, PRINT, PROGRAM
Generalmente, una declaracin debe escribirse en una lnea. Sin embargo, las declaraciones mltiples pueden aparecer
sobre una lnea si ellos son separados por punto y coma (;). En aras de la claridad, estos se recomiendan nicamente con
asignaciones cortas, tal como A = 1; B = 1; C = 1
6.- Descripcin de los elementos bsicos del lenguaje Fortran 90
En el nuevo estndar del Fortran, el Fortran90, se considera una nueva forma de cdigo fuente, la forma fuente libre, en
ella no existen restricciones sobre las posiciones que deben ocupar las sentencias Fortran, y sus caractersticas
principales son:

Los caracteres en blanco son siempre significativos exceptuando casos en los que se introducen para hacer ms legible
el programa. Como por ejemplo:
Caudal=Caudal+Y(i) se puede escribir Caudal = Caudal + Y(i) que es la misma sentencia. Adems dos o ms
espacios en blanco consecutivos siempre equivalen a uno.
Reiterando que cada lnea de programa no puede tener ms de 132 caracteres.
El smbolo de exclamacin ( !) indica al compilador que todo lo que aparece a continuacin en la misma lnea es un
comentario y el compilador lo ignora. En un programa no est limitado el nmero de comentarios. Adems una lnea
cuyo primer carcter no blanco sea !, se conoce con el nombre de lnea de comentario.
El smbolo & es un smbolo de continuacin de la siguiente lnea y permite al programador continuar una sentencia en la
siguiente lnea. Una sentencia no puede abarcar ms de 39 lneas. Si el primer carcter no blanco en la lnea de
continuacin es un & los espacios en blanco son ignorados, esto permite escribir una cadena de caracteres en ms de
una lnea. Ejemplo:
Print*, &
Aprendiendo a programar &
& con Fortran 90.

Las lneas de comentario no pueden estar divididas en varias lneas debido a que el compilador considerara el
smbolo & como un carcter ms y no como el signo de continuacin, puesto que est dentro del comentario
(indicado por el signo de admiracin).

Una lnea sin caracteres o solo con caracteres en blanco es considerada como una lnea de comentario.

En una lnea puede aparecer ms de una sentencia separada por un punto y coma (;). Adems, en ausencia del
smbolo de continuacin &, el final de la lnea lo marca el final de la sentencia.

EL ENTORNO INTEGRADO DE DESARROLLO DEL COMPILADOR FORTRAN


90
1.- Requerimientos del Sistema:
Para programar con Fortran 90, se necesitan:
Una Computadora Personal: 80386 - 80486 o Pentium, Memoria RAM 16 Mb (Mejor 32 Mb)
El disco duro deber tener un espacio suficiente para copiar los archivos, adicionalmente 45 Mb de espacio.
Sistema Operativo Windows 95 98, WinXp, WinNT.
Programa de instalacin en CD - ROM del Fortran PowerStation
Monitor a color SVGA, un Mouse.
2.- Pasos para ingresar al EID del Fortran 90
Para ingresar al EID del Fortran 90 para Windows seguir los siguientes pasos.
2.1
Ir al Botn Inicio Todos los Programas Fortran PowerStation 4.0 Microsft Developer
Studio. (Ver Figura N 01)

Figura N 01 Para ingresar al EID del Fortran 90 para Windows


2.2.- El EID del Fortran 90
Una vez ejecutado el paso anterior, nos presenta una ventana tal como se muestra en la siguiente Figura N 02. Se debe
tener en cuenta; si es la primera vez que se ejecuta el compilador, el EID es la figura que se muestra. Si es que no se ha
cerrado la carpeta de proyectos, en una siguiente sesin de trabajo por defecto nos mostrar el programa que se estaba
haciendo en la sesin anterior, es recomendable que los proyectos se cierren completamente.
En la figura observamos dos ventanas, una barra de men principal, y barra de herramientas que estn asociadas a
rdenes como Nuevo, Abrir, Guardar, Copiar, Cortar, Pegar, etc.
2.3.- Descripcin del EID

3
4

Fig. N 02 El EID del Fortran 90


De acuerdo a la Figura N 02, hemos colocados unos crculos numerado los cuales nos permite describir brevemente:
(1).- Nos presenta la ventana InfoView, El InfoView muestra la organizacin de Libros En lnea. Esto le permite mostrar
cualquier asunto mostrado en su jerarqua.
Utilizacin del InfoViewer, enmarcado con lnea punteada de color rojo, ejemplo, ver la Figura N 03

Fig. N 03 InfoView
(2).- Esta ventana teniendo en cuenta la Fig. N 02, presenta informacin tcnica sobre los diversos temas que
comprende el estudio del Fortran 90. Fig. N 03
Opciones de Men de la barra principal:

Figuras N 04
PASOS PARA CREAR UN PROGRAMA EN FORTRAN
Primero se crea la carpeta de proyectos, luego se genera el archivo de texto, y grabarlo (.F90)
1. Ir al Menu File New
Seleccione la opcin Project Workspace, luego Ok.

Figura N 05
Sale una nueva ventana para crear el nuevo proyecto, en esta ventana se debe especificar el nombre del proyecto y la
unidad donde se deber grabar el proyecto de tal forma que se almacenen todos los archivos que se crean a la hora de
compilarlo, ejecutarlo el programa, es necesario que el archivo donde se encuentra el programa sea igual al nombre del
proyecto. ( Observe la ventana, Figura N 06
Ingrese el nombre
del proyecto

Aplicacin
para crear
programas

Escriba la unidad
donde se guardara
el proyecto,
C: A:

Figura N 06
2. Nuevamente ir al Menu File New, sale nuevamente el recuadro New, escoger la opcin Text File. Figura N 07

Figura N 07

Luego el entorno quedara de la siguiente forma: Figura N 08

Ud. Puede escribir un programa


en Fortran 90, bajo las ordenes
que corresponda a la versin del
Fortran 90.

Figura N 08
Si desea trabajar con instrucciones del Fortran para versiones anteriores hacer lo siguiente:
Estando en la ventana anterior, ir al menu File Save. Figura N 09

EN ESTE RECUADRO PONER UN NOMBRE


CON EXTENSIN FOR
SE RECOMIENDA AL NOMBRE IGUAL DEL
PROYECTO

Figura N 09
Nota. Una vez guardado el programa, por ejemplo NEWTON.F90, se entra a la fase de compilacin, en esta fase el cdigo
fuente es traducido en cdigo binario para que la computadora lo entienda y procese el programa, adems que verifica
los posibles errores que hayamos cometido a la hora de codificar la instrucciones del programa.
Observe las figuras:
Figura N 10 Presenta el programa escrito.
Figura N 11 Presenta el paso para compilar Build Compile
Figura N 12 Presenta el programa compilado mostrando la ventana de salida. Libre de errores y advertencia. Solo as
se podr ejecutar el programa con xito.
Figura N 13. Presenta la opcin para ejecutar el programa Build Execute
Figura N 14 Presenta una ventana de dialogo donde nos pregunta si aceptamos los ltimos cambios realizados. Yes.
Figura N 15 Presenta la ventana de salida de datos (Fondo Negro)

Carpeta de
trabajo

Programa
fuente

Figura N 10

Figura N 11

Figura N 12

Figura N 13

Figura N 14

Figura N 15

Recuerde que una vez ejecutado el programa, deber de cerrar el proyecto para empezar con un nuevo proyecto.
Observe la Figura N 16

Close Workspace

Figura N 16

TIPOS DE DATOS Y LOS PRIMEROS PASOS: LEER, CALCULAR, ESCRIBIR


Caracteres Fortran
Fortran 90/95 tiene su propio alfabeto especial llamado juego de caracteres Fortran. Slo los caracteres de su alfabeto
pueden
usarse en este lenguaje. Consta de los siguientes:
Caracteres alfanumricos:
Caracteres alfabticos en mayscula (26): A, B, C, D, E, F,G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z.
Caracteres alfabticos en minscula (26): a, b, c, d, e, f, g, h,i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z.
Caracteres numricos (10): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
Carcter de subrayado (1): _
Caracteres especiales (22):
= + - * ** / ( ) . , $ : % ; ! & < > ? <blanco>.
Nota: Fortran no distingue entre caracteres alfabticos en maysculas o en minsculas, excepto cuando forman parte de
cadenas de
Caracteres.

La sentencia STOP:
La sentencia STOP detiene la ejecucin de un programa, y opcionalmente, imprime un mensaje en la salida
estndar de
errores. Sintaxis STOP [n]

n es una constante carcter o un entero de hasta 5 dgitos.


STOP termina la ejecucin de un programa Fortran, antes de que ste llegue al final de dicho programa. STOP tambin manda
un mensaje a la salida estndar de errores si se ha especificado algo despus de l (dgitos o cadena de caracteres).

Un programa Fortran puede tener varias sentencias STOP (es decir, varios puntos de parada), por ello aunque el uso de n no es
obligatorio, es conveniente, ya que nos dar una idea clara del punto en que ha parado el programa.

Cuando la sentencia STOP precede inmediatamente a la sentencia END PROGRAM es opcional. El compilador genera
automticamente un comando STOP cuando alcanza la sentencia END PROGRAM.

Entendiendo que un buen programa Fortran debe tener un nico punto de entrada y otro de salida, sin ningn otro punto de
parada intermedio, el uso de esta sentencia est desaconsejado.
Ejemplo de uso de STOP
CDIGO
DESCRIPCIN
STOP 7373
SE ESCRIBE "STOP 7373" EN LA SALIDA DE ERRORES
STOP 'ACABO'
SE ESCRIBE "STOP ACABO" EN LA SALIDA DE ERRORES
STOP
NO SE ESCRIBE NADA EN LA SALIDA DE ERRORES

TIPOS DE DATOS
Hay 5 tipos de datos predefinidos llamados intrnsecos para constantes y variables Fortran.
Cada uno de estos tipos de datos intrnsecos admiten varias longitudes de memoria, dependiendo de la anchura de la
palabra del computador, conocidas como clases. Una de esas clases, la ms habitual, se le llama clase por defecto.
DENOMINACIN EN
FORTRAN

TIPO
ENTERO
REAL
COMPLEJO
LGICO
CARCTER

INTEGER
REAL
COMPLEX
LOGICAL
CHARACTER

[Len=

BYTES QUE OCUPA


*
4
4
8
4
len

caract)]

INTERVALOS DE VALORES
-232-1 a 232-1
-3.402823x10+39 a 3.402823x10+39
Igual que dato real
.TRUE. .FALSE.
Conjunto de caracteres ASCII de 8
bits

Depende de la capacidad del computador

Suponiendo enteros de 4 Bytes, cualquier intento de usar un valor fuera del rango de representacin dado en la
Tabla 1.2, es decir, mayor o menor que sus valores lmite, resulta en un llamado error de overflow.
Para solucionar esta limitacin, en parte, se incluye el tipo de dato real. Los nmeros reales se caracterizan por
dos cantidades: el rango que marca la diferencia entre los nmeros mayor y menor que pueden representarse y
la precisin o nmero de dgitos significativos que puede conservar un nmero. Para reales de 4 Bytes, el rango
es aproximadamente de 10-38 a 1038 y la precisin de 7 dgitos. As, 1000000.0 y 1000000.1 no pueden distinguirse
en un programa Fortran en el que ambos son definidos de tipo real de 4 Bytes. Ms adelante se aprender a usar
reales de alta precisin.
En cuanto a las variables declaradas de tipo carcter, su longitud viene dada por el nmero mximo de caracteres
que van a almacenar. Si no aparece el parntesis en la declaracin de tipo, las variables de la lista slo podrn
almacenar un carcter.
Adems, Fortran 90/95 permite al programador definir tipos de datos derivados, que son tipos de datos
especiales para resolver problemas particulares.

Constantes en Fortran
Definicin de constante:
Valor especfico y determinado que se define al hacer un programa y que no cambia a lo largo del
mismo.
Cuando un compilador Fortran encuentra una constante, coloca el valor de la constante en una
localizacin conocida de la memoria y hace referencia a esa localizacin cada vez que se usa la
constante en el programa.
Constantes enteras:
Puede tomar nicamente un valor entero (positivo, negativo o cero). Se representa como un signo
(opcional) seguido de una cadena no vaca de nmeros.
Ejemplo: 59, -67412, +8899, 0, -89, 0012, 27, 3
Constantes reales
Bsica.
Se compone de: signo (opcional), parte entera (secuencia de dgitos), punto decimal, parte fraccional (secuencia de
dgitos). Ejemplos: 12.343 -0.0032 86. .3475 (equivalente a 0.3475)
Bsica con exponente.
El exponente real se compone de: carcter alfabtico E, signo (opcional), constante entera (2 dgitos como mximo).
Ejemplo: +34.453E4 12.323E+03 -0.0034E-03
.89E-2
5.434E0
-4344.49E-5
Constantes lgicas
Una constante lgica puede tener nicamente los valores verdadero y falso. .TRUE. Verdadero, .FALSE. Falso.
Constantes complejas
Una constante compleja representa un nmero complejo como un par ordenado de nmeros reales. El primer nmero del
par representa la parte real y el segundo la parte imaginaria. Cada parte vendr codificada como un nmero real.
Ejemplos: (3.E34,0.332)
(-3.329,-.3E9)
Constantes carcter

Consiste en una cadena de caracteres, el carcter blanco es vlido y significativo dentro de la cadena, la longitud de la
constante carcter coincide con el nmero de caracteres que componen la cadena.
Cada carcter de la cadena tiene una posicin concreta que es numerada consecutivamente (comenzando en 1). El nmero
indica la posicin del carcter dentro de la cadena comenzando por la izquierda.

Para codificar una constante carcter dentro de un programa deber encerrarse entre dos caracteres delimitadores comilla
simple o dobles comillas. La longitud de la cadena deber ser mayor que 0.
Los delimitadores no forman parte de la constante en: Hola que tal hasta luego Lucas.
Para que la constante carcter incluya comillas simples (dobles) rodearla de dobles (simples) comillas: Hola que
tal hasta luego Lucas.
Identificadores Un identificador es un nombre que se usa para denotar programas, algunas constantes, variables y otras entidades.
Los identificadores deben empezar con una letra y pueden tener hasta 31 letras, dgitos o caracteres de subrayado _.
Por ejemplo, identificadores vlidos son: Masa, MASA, Velocidad_de_la_luz, Sueldo_del_ultimo_mes, X007.
Y no vlidos: R2-D2, 34JUlio, pepe$.

Variables
Una variable es una entidad que tiene un nombre y un tipo. Un nombre de variable es un nombre simblico de un dato. Por tanto, ese dato
podr ser identificado, definido y referenciado a travs de dicha variable. Cuando un compilador Fortran encuentra una variable, reserva
espacio en memoria para esa variable de modo que, cada vez que se use la variable en el programa, se hace referencia a su ubicacin en
memoria.
El nombre de las variables debe ser un identificador vlido. El tipo de una variable puede venir determinado de forma explcita o implcita.

Declaracin explcita
TIPO:: lista de variables
TIPO es cualquiera de los tipos de datos Fortran vlidos de la Tabla anterior. lista de variables es un conjunto de variables separadas por
comas cuyos nombres son identificadores vlidos.
Ejemplos:
REAL:: radio, area INTEGER:: mesas, sillas
COMPLEX:: z1, z2 LOGICAL:: testea
CHARACTER (len=20):: alumno1, alumno2

DECLARACIN IMPLCITA
Si una variable no ha sido definida explcitamente por una sentencia de definicin de tipo, ste ser determinado por la primera letra de
su nombre:
I,J,K,L,M,N: son enteras los nombres de variables que empiecen con estas letras. El resto de letras: ser de tipo real.
Existe la posibilidad de gobernar los tipos implcitos. La sintaxis general es: IMPLICIT {NONE | TIPO (lista de letras)}
NONE significa que no hay nada implcito. Por lo tanto, todas las variables del programa deben declararse explcitamente.
TIPO es cualquiera de los tipos de datos Fortran vlidos del cuadro anterior.
lista de letras es un conjunto de letras que corresponden a las iniciales de los nombres de las variables.
Si no son consecutivas en el alfabeto, van separadas por comas. Si son consecutivas en el alfabeto, letra_inicial-letra_final.
La declaracin implcita puede ser una fuente de problemas. En su lugar, se recomienda usar la sentencia IMPLICIT NONE y declarar de
forma explcita todas las variables y constantes que se vayan a emplear.
Ejemplos:
IMPLICIT NONE
!No hay nada implcito.
IMPLICIT LOGICAL (H-J)
!Variables que comiencen por H, I, J son lgicas.

INICIALIZACIN DE VARIABLES:
A partir de Fortran 90, las variables pueden inicializarse al ser declaradas. TIPO:: var1=valor1[,var2=valor2]
Ejemplo 1:
REAL:: velocidad=3.25, aceleracion=0.75, espacio=10.9
Ejemplo 2:
CHARACTER (len=10):: apell1, apell2, nombre=Santiago
El valor de una variable no inicializada no est definido por el estndar de Fortran 90/95. Algunos compiladores automticamente cargan
un cero en esa variable, otros cargan cualquier valor existente en la posicin de memoria de esa variable y otros incluso causan un error
de ejecucin al usar una variable que no ha sido previamente inicializada.

CONSTANTES CON NOMBRE: PARAMETER


Cuando en un programa se utilizan constantes conocidas, ya sean: fsicas como la aceleracin de la gravedad o la constante de Planck,
matemticas como el nmero pi o el nmero e, qumicas como el nmero de Avogadro etc., es deseable escribirlas siempre igual y con la
mxima precisin que acepte el computador.
La mejor manera de conseguir consistencia y precisin en un programa en cuanto al uso de constantes conocidas es asignarles un
nombre y usar ese nombre siempre para referirse a la tal constante a lo largo del programa.
Las constantes con nombre se crean usando el atributo PARAMETER de una sentencia de declaracin de tipo. La forma general de una
sentencia de este estilo es: TIPO, PARAMETER:: nombre1 = valor1[, nombre2 = valor2]...
Permite dar un nombre simblico a una expresin constante que ser invariable en todo el programa. En tiempo de compilacin, se hace
una sustitucin del nombre por el valor. Cualquier intento de cambiar su valor con una sentencia de asignacin o de lectura provoca un
error de compilacin.
Ejemplo: REAL, PARAMETER:: PI = 3.14159, E = 2.71828

EXPRESIONES ARITMTICAS
Los operadores aritmticos son:
OPERADORES BINARIOS
+ SUMA
- RESTA
* MULTIPLICACIN
POTENCIA
OPERADORES UNARIOS
+ SIGNO POSITIVO - SIGNO NEGATIVO

/ DIVISIN

**

No se pueden escribir dos operadores adyacentes. Ejemplo, La expresin a**-b es ilegal en Fortran y debe ser escrita como a**(-b)

REGLAS DE PRECEDENCIA DE OPERADORES ARITMTICOS


Por precedencia (Mayor a menor): ( ) ** + , - (UNARIOS: SIGNOS) * , / + , Si una expresin contiene dos o ms operadores de la misma precedencia se siguen las siguientes reglas:

Cuando existen parntesis anidados se evalan desde el ms interno hasta el ms externo. Es conveniente usar tantos
parntesis como sean necesarios en una expresin para hacerla ms clara y fcil de comprender.

Las operaciones de potencia se evalan de derecha a izquierda.

Multiplicacin/divisin y suma/resta se evalan de izquierda a derecha.

ARITMTICA CON TIPOS MEZCLADOS


Si se mezclan en una expresin operandos de distintos tipos, el resultado se eleva a la categora del mayor, segn el siguiente orden:

Ejemplo
Sean: a=8.0 b=4.0 c=3.0 (Reales)
i=8 j=4 k=3 (Enteros)
El resultado de:
a/b 2.0 (real)
j/a 0.5 (real)
i/j 2 (entero)
b/c 1.33333... (real)
a/c 2.66667 (real)
j/k 1 (entero)
j/i 0 (entero)
j/c 1.33333... (real)
Dado que la divisin entera puede producir resultados inesperados, los enteros deberan ser usados nicamente para cosas que son
enteras intrnsecamente por naturaleza, como los contadores y los ndices.
Debido a la longitud de palabra finita de un computador, algunos nmeros reales no pueden representarse exactamente. Por ejemplo, la
representacin de 1./3. puede ser 0.333333 y, como resultado, algunas cantidades que son tericamente iguales no lo son al ser
evaluadas en un computador: 3.*(1./3.) 1.

ASIGNACIN ARITMTICA
Una sentencia de asignacin aritmtica asigna el valor de una expresin aritmtica a una variable o un elemento de una matriz.
El operador de asignacin en Fortran es el smbolo =. variable = expresin_aritmtica
El funcionamiento es: Se evala la expresin_aritmtica, se asigna el valor obtenido a la variable, si el tipo de la variable es diferente de
la expresin_aritmtica, se produce una conversin de tipo: expresin_aritmtica es convertida al tipo de variable antes de ser asignada a
variable.
Pueden producirse problemas de truncamiento.
Ejemplos:
Si i es una variable entera:

i = 3./2. ! i se le asigna el valor 1


i=i+1 ! Incrementa en una unidad el valor de i

FUNCIONES PREDEFINIDAS EN FORTRAN


Funciones intrnsecas importantes proporcionadas por Fortran. El tipo del dato del argumento y del resultado que admiten es indicado por
una letra: i = entero, r = real. Un asterisco en el miembro de la derecha indica que el resultado es del mismo tipo que el argumento

EJEMPLOS RESUELTOS
1.- Elaborar un programa que calcule el area y el volumen de un cilindro cuyas dimensiones radio y altura se leen desde
el teclado: Area de un cilindro: A= A_LATERAL + 2 Ab; donde A_LATERAL = 2rh+ 2r2 el volumen es V = r2h
PROGRAM vol_cili
real::R, H, AL, ATB, A,V
real, parameter::pi=3.1416
print*,"ingrese radio"
read*,R
print*, "ingrese altura"
read*,H
AL=2*pi*R*H !Calcula el area lateral
ATB=2*pi*R**2 !Calcula el area de las bases del cilindro
A=AL+ATB Calcula el area total del cilindro
V=pi*R**2*H !Calcula el volumen Del cilindro
print*,"Area Cilindro=", A
print*,"Volumen=", V
END PROGRAM vol_cili

ingrese radio
1
ingrese altura
1
Area Cilindro=
12.56640
Volumen= 3.141600
Press any key to

2.- Elaborar un programa que determine la hipotenusa de un triangulo rectngulo conocidas las longitudes de los
catetos:
Programacin en Fortran:
PROGRAM PITAGORAS
real:: a, b, c
print*, "Ingrese un cateto"
read*, a
print*, "Ingrese el otro cateto"
read*, b
c=sqrt(a**2 + b**2)
print*,"Hipotenusa=",c
END PROGRAM PITAGORAS
3.- Elaborar un programa que calcule el area de un triangulo en
semiperimetro y el area =
PROGRAM area_triangulo
real:: area, a, b, c, p

Ingrese un cateto
3
Ingrese el otro cateto
4
Hipotenusa=
5.000000
Press any key to continue
funcin de las longitudes de sus lados donde p=(a+b+c)/2 donde p es el

p ( pa ) ( pb ) ( pc )
ingrese el primer lado
3
ingrese el segundo lado
4
ingrese el tercer lado
5
area del triangulo = 6.000000
Press any key to continue

print*,"ingrese el primer lado"


read*,a
print*,"ingrese el segundo lado"
read*,b
print*,"ingrese el tercer lado"
read*,c
p=(a+b+c)/2
area=sqrt(p*(p-a)*(p-b)*(p-c))
print*,"area del triangulo =", area
END PROGRAM area_triangulo
4.- Elabore un programa que realice la siguiente conversin dada una temperatura en grados Celsius a grados Fahrenheit F=(9/5) C + 32
PROGRAM conversion
real::F, C
print*, "Ingrese Temperatura en grados Celsius"
read*, C
Ingrese Temperatura en grados Celsius
F=(9/5)*C + 32
60
print*, "Grados F= ", F
Grados F= 92.00000
END PROGRAM conversion

Press any key to continue

5.- Elabore un programa que permita el ingreso de su nombre y de cmo salida un mensaje que diga: HOLA JOS BIENVENIDO A
FORTRAN 90, donde Jos puede ser cualquier nombre.
PROGRAM mensaje
character(len=10):: nombre, men*7, men2*25
Ingrese Su Nombre
print*, "Ingrese Su Nombre"
William
read*,nombre
! HOLA William BIENVENIDO A FORTRAN 90 !
men="! HOLA"
Press any key to continue
men2="BIENVENIDO A FORTRAN 90 "
print*, men, nombre, men2
END PROGRAM mensaje
6.- Elaborar un programa que lea un entero positivo y determine la raiz cuadrada
PROGRAM RaizCuadrada
IMPLICIT NONE
REAL :: num, raiz
Dame un nmero positivo
! Preguntamos por el dato de entrada
25
PRINT*, "Dame un nmero positivo"
La raiz de 25.00000
es 5.000000
READ*, num
Press any key to continue
! Calculamos su raiz cuadrada
raiz = SQRT(num)
! Mostramos el resultado
PRINT*, "La raiz de ",num," es ",raiz
END PROGRAM RaizCuadrada
7.-Elabore un programa que permite el ingreso de un conjunto de palabras y visualice cuantos caracteres como mximo puede almacenar
y cuantos caracteres incluido los espacios en blanco.
PROGRAM LongitudCadena
IMPLICIT NONE
CHARACTER (LEN=50) :: cad
PRINT*, "Escribe algun texto"
Escribe algun texto
READ*, cad
"Fortran 90 es lo mejor para Ingenieria"
PRINT*, "La cadena puede almacenar un maximo de ",LEN(cad)," caracteres" La cadena puede almacenar un maximo de
50
PRINT*, "Has escrito ",LEN_TRIM(cad)," caracteres incluido los espacios en blanco"
caracteres
END PROGRAM LongitudCadena
Has escrito
38 caracteres incluido los espacios en
8.- Elaborar um programa que permita el ingreso de um numero real y visualice
su parte entera, el entero mas cercano y su valor absoluto
blanco
PROGRAM Real2Entero
IMPLICIT NONE
REAL :: x
PRINT*, Ingrese un nmero real"
Ingrese un numero real
READ*, x
5.5
PRINT*, "Su parte entera es: ", INT(x)
Su parte entera es:
5
PRINT*, "El entero ms cercano es: ", NINT(x)
El entero mas cercano es:
6
PRINT*, "El valor absoluto es: ", ABS(x)
El valor absoluto es: 5.500000
END Real2Entero
Press any key to continue

PROBLEMAS PROPUESTOS
1.-Escribir un programa que muestres por pantalla el mensaje: HOLA A TODOS
2.-Elabora un programa que calcule la potencia de un nmero entero, ledos ambos previamente por teclado, y escribir el
resultado por pantalla
3.- Elabore un programa para calcular el valor de la expresin

3 x2 +2 y

z
4

para tres nmeros reales x, y, z ledos

por teclado y escribir el resultado por pantalla


4.- Resuelve la ecuacin de segundo grado Ax 2 + Bx + C = 0 nicamente para soluciones reales. Lee los coeficientes A, B
y C por teclado y escribe las dos soluciones por pantalla.
5.-Elabore un programa para codificar la expresin

2
2
sen ( x )+ cos ( x )

para un ngulo x en radianes ledo por

teclado. Muestre el resultado en la pantalla del monitor


6.- Programa que pida por teclado el radio de la base y la altura de un cono. Calcula y escribe el valor de su volumen
7.- Programa que pida por teclado el lado de un cuadrado. Calcula y escribe los valores de su rea (A=L 2) y diagonal
(Teor. Pitgoras).
8.- Programa que pida el radio de una esfera y calcule y muestre su superficie (S=4R 2) y volumen

10

11

Vous aimerez peut-être aussi