Você está na página 1de 11

PROGRAMACIN APLICADA A SISTEMAS ELCTRICOS DE POTENCIA

FERNANDO TOLEDO2

APENDICE
FUNDAMENTOS DE PROGRAMACION EN FORTRAN
La codificacin de algnos de los programas presentados en este artculo, como ya se seal, estn en
lenguaje FORTRAN. El compilador empleado es el Microsoft FORTRAN versin 5.1, por lo que el empleo
de alguna otra versin requerir la consulta de su respectivo manual, debido a que algunos de los comandos
aqu presentados pueden no incluirse en dicha versin y con ello marcar errores de codificacin.
A continuacin se presentan los operadores que se emplean en este lenguaje:
Operadores Aritmticos.
**
*
/
+
-

Exponenciacin.
Aectacin negativa.
Multiplicacin.
Divisin.
Adicin.
Sustraccin.

Operadores Lgicos.
.AND.
.NOT.
.OR.
.EQV.
.NEQV.

Conjuncin.
Negacin.
Disyuncin.
Equivalencia lgica.
No equivalencia lgica.

Operadores Racionales.
.LT.
.LE.
.EQ.
.NE.
.GT.
.GE.

Menor que.
Menor o igual que.
Igual que.
Diferente de.
Mayor que.
Mayor o igual que.

Operador de Asignacin.
=

Asigna o reemplaza.

Variables.
Los nombres de las variables deben ser de 1 a 6 caracteres. El primer caracter debe ser alfabtico. Si no
se expresa el tipo de variable mediante un estatuto IMPLICIT, todas las variables que inicien con las letras I,
J, K, L, M, y N son tipo INTIGER*2 INTIGER*4 dependiendo de la asignacin dada por el metacomando
$STORAGE; las variables iniciadas con las letras A-H O-Z se tomarn como tipo REAL.
Tipo de Dato
INTEGER*2
INTEGER*4
REAL

Entero desde -32767 hasta +32767


Entero desde -2147483,647 hasta +2147483,647
Variable tipo punto flotante (de 1 a 7 dgitos) desde
8.43E-37 hasta 3.37E+38 (REAL*4).

FERNANDO TOLEDO2

PROGRAMACIN APLICADA A SISTEMAS ELCTRICOS DE POTENCIA

DOUBLE
PRECISION
LOGICAL
(2 o 4 bytes)
CHARACTER*n
COMPLEX
(8 bytes)

Variable tipo punto flotante (de 1 a 16 dgitos) desde


4.19D-307 hasta 1.67D+308 (REAL*8)
Valores de la tabla de verdad: .TRUE. (verdadero) y
.FALSE. (falso) (LOGICAL*2 o LOGICAL*4)
Una cadenas que contiene no ms de 127 caracteres
Un par ordenado de nmeros reales de simple
precisin, donde la segunda componente representa la
parte imaginaria (COMPLEX*8).
DOUBLE COMPLEX
Nmero complejo con numeros reales de doble
(16 bytes)
procisin (COMPLEX*16)

Descriptores de Formato de Campo.


Son utilizados para definir la presentacin del contenido de una variable previamente especificada.
Iw[[.m
Zw
Fw.d
Ew.d[[Ee
Gw.d[[Ee
Dw.d
Lw
A[[w
Notas.-

Valores enteros.
Valores hexadecimales.
Valores reales.
Valores reales con exponente.
Valores reales de rango extendido.
Valores reales de doble precisin.
Valores lgicos.
Valores tipo caracter.

w representa el nmero de espacios que ocupar el valor de la variable,


m representa el nmero de cifras a la izquierda del punto,
d representa el nmero de dgitos a la derecha del punto decimal.
e representa el exponente.

Funciones Intrnsecas.
Nombre

Definicin

Tipo de
Argumentos

Tipo de valores de
Funcin

(todos)
(todos)
INTEGER
REAL*8
(todos)
(todos)
(todos)
CHARACTER
INTEGER

INTIGER
REAL*4
REAL*4
REAL*4
REAL*8
COMPLEX*8
COMPLEX*16
INTEGER
CHARACTER

REAL*4
REAL*8

REAL*4
REAL*8

arg
Obtiene la magnitud del
nmero complejo Z

(Todos)
COMPLEX*8
COMPLEX*16

(Todos)
REAL*4
REAL*8

Proporciona el residuo del

INTEGER

INTEGER

Conversin

Convierte el contenido de la
variable a:
INT (arg)
INTEGER
REAL (arg)
REAL*4
FLOAT(I)
REAL*4
SNGL(X)
REAL*4
REAL*8
DBLE(arg) [3
COMPLEX*8
CMPLX(Z,[Y)[4
COMPLEX*16
DCMPLX(Z,[Y)
INTEGER
ICHAR(C) [5
CHARACTER
CHAR(X) [5
Truncacin
AINT(arg)
Trunca un nmero REAL
Valor absoluto
ABS (arg)
CABS(Z)
Residuo
MOD(arg1,arg2)

FERNANDO TOLEDO2

PROGRAMACIN APLICADA A SISTEMAS ELCTRICOS DE POTENCIA

cosciente arg1/arg2
Diferencia positiva [5
DIM(arg1,arg2)
arg1-Mnino de arg1 y arg2

Conjugado de un Complejo
CONJG(Z)
Regresa X - jY de X + jY
DCONJG(Z)
Regresa X - jY de X + jY
Parte real de un complejo
DREAL(Z)
REAL (Z)
Parte imaginaria de un complejo
IMAG (Z)

REAL*4
REAL*8

REAL*4
REAL*8

INTEGER
REAL*4
REAL*8

INTEGER
REAL*4
REAL*8

COMPLEX*8
COMPLEX*16

COMPLEX*8
COMPLEX*16

COMPLEX*16
COMPLEX*8
COMPLEX*16

REAL*8
REAL*4

COMPLEX*8
COMPLEX*16

REAL*4
REAL*8

REAL*4
REAL*8
COMPLEX*8
COMPLEX*16

REAL*4
REAL*8
COMPLEX*8
COMPLEX*16

REAL*4
REAL*8
COMPLEX*8
COMPLEX*16

REAL*4
REAL*8
COMPLEX*8
COMPLEX*16

REAL*4
REAL*8
COMPLEX*8
COMPLEX*16

REAL*4
REAL*8
COMPLEX*8
COMPLEX*16

REAL*4
REAL*8
COMPLEX*8
COMPLEX*16

REAL*4
REAL*8
COMPLEX*8
COMPLEX*16

REAL*4
REAL*8
COMPLEX*8
COMPLEX*16

REAL*4
REAL*8
COMPLEX*8
COMPLEX*16

REAL*4
REAL*8
COMPLEX*8
COMPLEX*16

REAL*4
REAL*8
COMPLEX*8
COMPLEX*16

REAL*4
REAL*8

REAL*4
REAL*8

REAL*4
REAL*8

REAL*4
REAL*8

REAL*4
REAL*8

REAL*4
REAL*8

Raiz cuadrada
SQRT(arg)

Exponencial
EXP(arg)

arg

Logaritmo natural
LOG(arg)

ln (arg)

Logaritmo de base 10
LOG10(arg)

log10 (arg)

Seno
SIN(arg)

Coseno
COS(arg)

Tangente
TAN(arg)
Arco seno
ASIN(arg)
Arco coseno
ACOS(arg)
Arco tangente

FERNANDO TOLEDO2

PROGRAMACIN APLICADA A SISTEMAS ELCTRICOS DE POTENCIA

ATAN(arg)
ATAN2(X,Y)

arctan (X/Y)

Seno hiperblico
SINH(arg)
Coseno
hiperblico
COSH(arg)
Tangente hiperblica
TANH(arg)

REAL*4
REAL*8
REAL*4
REAL*8

REAL*4
REAL*8
REAL*4
REAL*8

REAL*4
REAL*8

REAL*4
REAL*8

REAL*4
REAL*8

REAL*4
REAL*8

REAL*4
REAL*8

REAL*4
REAL*8

Lista de instrucciones contenidas en el Microsoft FORTRAN.


NOTA.- [[ arg indican de que arg es opcional.
I/O
Entrada-Salida
ALLOCATE (arreglo ([[l: u[[,[[l: u... )[[,STAT = ierr )...
Dimenciona dinmicamente un arreglo que a sido previamente declarado con el atributo ALLOCATABLE.
arreglo
Nombre del arreglo.
ierr
Variable entera que regresa el estado del tamo del arreglo.
l
Expresin entera que ajusta el lmite ms bajo de el arreglo.
u
Expresin entera que ajusta el lmite ms alto de el arreglo.
ASSIGN etiqueta TO variable
Asigna el valor de un nmero de etiqueta o formato a una variable entera.
etiqueta
Es el formato o nmero de etiqueta. La etiqueta se mostrar en el mismo programa.
variable
Variable entera.
AUTOMATIC[[nombres
Declara la especificacin de variables en la locacin de memoria esttica.
nombres
Lista de variables o nombres de arreglos. Si son ms de una variable, stas deben de
separarse por comas.

BACKSPACE{archivo
([[UNIT=archivo
[[,ERR=errlabel
[[,IOSTAT=iocheck )}
Posiciona al archivo especificado en el inicio para su escritura.
archivo
Expresin entera que especifica la unidad externa. Si archivo no es abierto, ocurre
un error.
errlabel
Etiqueta de una instruccin ejecutable que debe estar en el mismo programa. Si
errlabel es especificado, un error I/O transfiere el control hasta la etiqueta errlabel.
Si es omitido, un error de I/O se determina con la presencia o ausencia de iocheck.
iocheck
Variable entera, arreglo de elementos, o estructura de elementos que regresan un
valor de cero si no ocurri un error, o el nmero de error si ste ocurri.
BLOCK DATA [[nombre del subprograma
Identifica el bloque de datos de un subprograma, donde variables y arreglos de elementos deben ser
inicializados.

PROGRAMACIN APLICADA A SISTEMAS ELCTRICOS DE POTENCIA

FERNANDO TOLEDO2

El nombre no ser similar a ninguno de los nombres de variabes locales o arreglo de elementos definidos
en el subprograma, y adems ser distinto a los nombres dados en el programa principal, procedimientos
externos, bloques comunes o cualquier otro subprograma.
CALL nom_sub [[args
Invoca una subrutina.
nom_sub
Nombre de la subrutina.
args
Uno o ms argumentos.
Si son ms de un argumento, estos se separan con comas.
CASE (lista de expresiones)
Comienza un bloque de instrucciones que se ejecuta si la expresin de prueba es igual a uno de los
valores de la lista de expresiones. Deben estar dentro del bloque del SELECT CASE.
CASE DEFAULT
Comienza un bloque de instrucciones que es ejecutado si la expresin de prueba no es ninguno de
los valores de los listados CASE de el bloque del SELECT CASE.
CLOSE ([[UNIT=archivo
[[,ERR=errlabel
[[,IOSTAT=iocheck
[[,STATUS=estado )
Cierra el archivo y previene subsecuentes lecturas y escrituras dirigidas a ese archivo.
archivo
Expresin entera que especifica la unidad externa. No ocurre error si la unidad no
es abierta.
errlabel
Ver BACKSPACE.
iocheck
Ver BACKSPACE.
estado
Expresin de caracteres que pueden ser KEEP DELETE. En archivos
temporales est predeterminado STATUS=DELETE, con lo cual se borra el
archivo. El colocar STATUS=KEEP ocasionar un error. En los dems archivos,
est predeterminado STATUS=KEEP.
COMMON [[/[[cname[[ [attrs /nlist[[ [[,/[[cname[[ [attrs /nlist...
Permite a dos o ms unidades o subprogramas accesar para lectura y/o modificar datos almacenados en
grupos de variables, a su ves definidos mediante un bloque con nombre.
CONTINUE
No tiene ningn efecto.Se usa como un punto de referencia para un nmero de etiqueta,
particularmente como la etiqueta terminal de un ciclo DO DO WHILE.
CYCLE
Control de regreso para el comienzo de un ciclo DO DO WHILE.En una instruccin del ciclo DO,
la variable es incrementada, En una instruccin del ciclo DO WHILE la expresin lgica es reevaluada.
DATA nlist
Asigna valores iniciales a variables. El nlist es una lista de variables, arreglo de elementos, arreglo
de nombres, subhilera de nombres , y listas implicando al ciclo DO separadas por comas.
DEALLOCATE arraylist
Libera el espacio previamente recervado en la instruccin ALLOCATE.
DIMENSION arreglo[[ [attrs ({[[lower: upper :} [[, {[[lower: upper :}... )
Especifica el nombre de un arreglo y define el nmero de elementos en el arreglo.
arreglo
Nombre del arreglo. Ms de un arreglo pueden ser declarados con la instruccin
DIMENSION. Los nombres se separarn con comas.

PROGRAMACIN APLICADA A SISTEMAS ELCTRICOS DE POTENCIA

attrs

lower
upper

FERNANDO TOLEDO2

Una lista de atributos separados por comas. El attrs describe a arreglo. Los
siguientes atributos podrn ser usados con el arreglo: ALIAS, ALLOCATABLE, C,
EXTERN, FAR, HUGE, NEAR, PASCAL, REFERENCE, VALUE.
Es el lmite inferior, el cual puede ser positivo, negativo o cero. Si no es
especificado, se tomar como 1.
Es el lmite superior., el cual puede ser positivo, negativo, cero o asterizco. Este
debe ser mayor o igual que lower.

DO [[label[[, variable=v_ini,v_fin[[,inc
Evalua el listado de la instruccin DO repetidamente ya sea hasta la instruccin etiquetada con el
nmero label o la instruccin END DO. Si inc (incremento) no es especificado, su valor por defecto es +1. La
ejecucin se detiene cuando variable excede el valor v_fin. Si inc es negativo, la ejecucin termina cuando
variable es menor que v_fin.
DO label WHILE (expresin lgica)
Repite el bloque de instrucciones acotado por la etiqueta con el nmero label, mientras la expresin
lgica sea verdadera. Si label no es especificado, el listado se finaliza con la instruccin END DO.
ELSE
Marca el inicio de un bloque ELSE.
ELSE IF (expresin) THEN
Ejecuta el bloque de instrucciones si expresin es verdadera.
END
Termina la ejecucin del programa principal, o la de un subprograma.
END DO
Termina el listado de instrucciones de un ciclo DO o DO WHILE.
END IF
Termina un bloque de instrucciones IF.
ENDFILE{archivo
([[UNIT=archivo
[[,ERR=errlabel
[[,IOSTAT=iocheck )}
Escribe una marca de fin de archivo para la unidad especificada.
ENTRY ename[[ [eattrs [[ ( [[formal[[ [atrrs [[, formal[[ [atrrs ... )
Especifica un valor de entrada a una subrutina o funcin externa.
ename
Nombre del valor de entrada. Si ename es un valor de entrada para una funcin
definida por el usuario, ename debe de corresponder al tipo de dato para:
Las reglas preestablecidas en la determinacin del tipo;
El tipo de dato especificado con un IMPLICIT;
Una declaracin en la funcin definida por el usuario, en su seccin de tipo de
declaracin
eatrrs
Lista de atributos, separados por comas. El eattrs describe a ename. Los siguientes
atributos pueden ser usados con ename: ALIAS, C, LOADDS, PASCAL,
VARYING.
formal
Nombre de la variable, arreglo, variable estructurada procedimiento formal. Si
ENTRY est en una subrutina, formal puede ser una asterizco.
attrs
Lista de atributos, separados por comas. El attrs describe a formal. Los siguientes
atributos pueden ser usados con formal: FAR, HUGE, NEAR, REFERENCE,
VALUE.

PROGRAMACIN APLICADA A SISTEMAS ELCTRICOS DE POTENCIA

FERNANDO TOLEDO2

EQUIVALENCE (nlist) [[,(nlist)...


Crea dos o ms variables o arreglos para ocupar el mismo espacio reservado de memoria. Las
variables enlistadas en nlist deben estar separadas por comas.
EXIT
Se utiliza para salir de un ciclo DO o DO WHILE tambin del listado de una instruccin IF.
EXTERNAL name[[attrs [[,name[[attrs ...
Identifica un nombre definido por el usuario como una funcin o subrutina externa.
FORMAT([[listado)
Marca el formato en que ser escrito un dato en la pantalla o en un archivo.
listado
Lista de descriptores de formato de campo.
[[tipo FUNCTION fun[[ [fattrs ( [[formal[[ [attrs [[,formal[[ [attrs ...)
Identifica una unidad de programa como una funcin, y es sustituida por su nombre, tipo de dato y
parmetros opcionales formales.
tipo
Declara el tipo de dato de el valor regresado por la funcin.
Si tipo es omitido, el tipo de funcin se determinar con la aplicacin de IMPLICIT.
Si ste no est, el tipo ser establecido por el compilador de FORTRAN. Si
IMPLICIT NONE o el metacomando $DECLARE se efectuan, el tipo de funcin
ser dado en la declaracin de la funcin o en una declaracin tipo.
Si tipo es especificado, el nombre de la funcin no podr aparecer en una
instruccin para declarar el tipo de dato.
func
Nombre de la funcin. El nombre func no podr aparecer en AUTOMATIC,
COMMON, DATA, EQUIVALENCE, INTRINSIC, NAMELIST SAVE.
fattrs
Lista de atributos, separados por comas. El fattrs describe a func. Los siguientes
atributos podrn ser usados con el nombre func: ALIAS, C, FAR, NEAR, PASCAL,
VARYING.
formal
Nombre de los argumentos formales. Si ms de uno son especificados, debern estar
separados por comas.
attrs
Lista de atributos, separados por comas. El attrs describe a formal. Los siguientes
atributos pueden ser usados con formal: FAR, huge, NEAR, REFERENCE,
VALUE.
GOTO variable [[[[, (labels)
Transfiere la ejecucin hacia donde se encuentre la etiqueta asignada a variable.
variable
Variable entera. Variable tendr que corresponder a una etiqueta de una instruccin
ejecutable dentro del mismo programa.
labels
Lista de una o ms etiquetas de instrucciones ejecutables dentro del mismo
programa. Si se especifican ms de una etiqueta, stas se separarn con comas.
Label podr presentarse ms de una vez en la lista.
GOTO (labels) [[, n
Transfiere el control a la instruccin con la n-sima etiqueta de la lista.
labels
Una o ms etiquetas de instrucciones ejecutables dentro del mismo programa. Si son
ms de una etiqueta, stas deben ir separadas por comas.
La misma etiqueta podr presentarse ms de una vez en la lista.
n
Expresin entera.
GOTO label
Transfiere el control a una instruccin etiquetada.
label
Etiqueta de una instruccin ejecutable dentro del mismo programa.
IF(expresin) labels

PROGRAMACIN APLICADA A SISTEMAS ELCTRICOS DE POTENCIA

FERNANDO TOLEDO2

Transfiere el control a una de tres etiquetas, dependiendo de el valor de expresin. Se le denomina


IF aritmtico.
expresin
Expresin entera o real de simple o doble precisin.
labels
Tres etiquetas de instrucciones ejecutables, dentro del mismo programa,
separadas por comas. La misma etiqueta puede estar ms de una vez.
Si expresin es:
<0
Transfiere el control a la primera etiqueta.
=0
Transfiere el control a la segunda etiqueta.
>0
Transfiere el control a la tercera etiqueta.
IF (expresin) instruccin
Si expresin es verdadera, instruccin es ejecutada; si es falsa, el programa continua con la
siguiente instruccin. Se le denomina IF lgico.
expresin
Expresin lgica.
instruccin Cualquier instruccin ejecutable exceptuando al CASE, DO, ELSE, ELSE IF, END,
END IF, END SELECT CASE, SELECT CASE, bloques IF, o cualquier IF lgico.
Ntece que la instruccin puede ser un IF aritmtico.
IF (expresin) THEN
Si expresin es verdadera, el bloque IF es ejecutado; si es falso, el control se transfiere hasta
encontrar una instruccin ELSE, ELSE IF END IF, del mismo nivel del IF.
expresin
Expresin lgica.
IMPLICIT {tipo (letters) [[, tipo (letters) ... NONE}
Define el tipo de dato de acuerdo con el nombre de la variable declarada por el usuario.
tipo
Indica el tipo de dato.
letters
Lista de letras y rango de letras. Si ms de una letra o rango son enlistados, deben
separarse con comas. Este proceso no es significativo.?
El rango de letras se indica con la primera y ltima letra del rango, separadas por
un signo menos. Las letras para un rango debern estar en orden alfabtico. En este
contexto, Microsoft FORTRAN define al signo $ como un caracter alfabtico que
sigue despus de la letra Z.
INCLUDE nombre
Intercambia el texto de un archivo en la locacin de la instruccin INCLUDE.
nombre
El nombre de el archivo con texto en FORTRAN que ser incluido dentro del
programa, marcado con apstrofes.
INTERFACE TO {funcin subrutina}
(Listado de declaraciones para todos los argumentos del proceso formal)
END
Especifica el nombre de una subrutina o funcin, con sus atributos y tipos de argumentos formales.
funcin
Declaracin de una instruccin FUNCTION.
subrutina
Declaracin de una instruccin SUBROUTINE.
INTRINSIC nombres
Declara que nombres es una funcin intrnseca.
nombres
Uno o ms nombres de funciones intrnsecas. Si ms de un nombre es especificado,
stos deben ir separados por comas.
LOCKING ([[UNIT=archivo
[[, ERR=errlabel
[[, IOSTAT=iocheck
[[, LOCKMODE=lockmode
[[, REC=rec
[[, RECORDS=recnum
Bloquea archivos de acceso directo y los marca para evitar otro uso en el ambiente de trabajo.

PROGRAMACIN APLICADA A SISTEMAS ELCTRICOS DE POTENCIA

FERNANDO TOLEDO2

archivo

Expresin entera de la unidad que ser cerrada. El archivo deber ser abierto como
un archivo de acceso directo.
lockmode
Expresin tipo caracter con uno de los siguientes valores:
'NBLCK' Bloquea la regin especificada para lectura y escritura. Si alguna de las
marcas est bloqueada por un proceso diferente, ocurre un error. Este
valor es el predeterminado.
'LOCK' Bloquea la regin especificada para escritura y lectura. Se espera en
alguna parte de la regin bloqueada para un proceso diferente que llegue
a disponerlo.
'NBRLCK' Bloquea la regin especificada para lectura; puede marcarlo an sinedo
para escritura. Este bloqueo es similar a NBLCK.
'RLCK'
Bloquea la regin especificada para lectura;puede marcarlo an siendo
para escritura. Este bloqueo es similar a LOCK.
'UNLCK' Desbloquea la regin especificada.
res

Expresin entera que es el nmero de la primera marca en un grupo de marcas que


sern bloqueadas o desbloqueadas. Si rec es omitido, la siguiente marca es
bloqueada.
recnum
Expresin entera que es el nmero de marcas que sern bloqueadas. Si es omitido se
considera igual a 1.
MAP
tipo-decl
.
.
.
END MAP
Delimita un grupo de tipo de declarain de variables dentro de una instruccin STRUCTURE.
tipo-dec
Declaracin de variables; pueden ser algunas de tipo convencional o una
declaracin RECORD de una estructura.
NAMELIST /namlst/ varlst [[/namlst/ varlst
Declara el nombre de un grupo de variables, y as poder ser escritos o leidos con una instruccin
WRITE o READ respectivamente.
namlst
Nombre del grupo de variables.
varlst
Lista de nombre de variables y arreglos; puede no incluir estructura de variables y
argumentos formales.
OPEN ([[UNIT= archivo
[[, ACCESS=access
[[, BLANK=blanks
[[, BLOCKSIZE=blocksize
[[, ERR=errlabel
[[, FILE=file
[[, FORM=form
[[, IOFOCUS=iofocus
[[, IOSTAT=iocheck
[[, MODE=mode
[[, RECL=recl
[[, SHARE=share
[[STATUS=status
[[TITLE=title )
Asocia el nmero de la unidad con un archivo externo
archivo
Expresin entera que especifica la unidad externa.

PROGRAMACIN APLICADA A SISTEMAS ELCTRICOS DE POTENCIA

access

FERNANDO TOLEDO2

Expresin tipo caracter evaluada con APPEND, DIRECT SEQUENTIAL


(este ltimo es el predeterminado).

blanks

Expresin tipo caracter que se evaluar con NULL ZERO. Si es NULL (el
predeterminado) se ignorarn los espacios (mismo que BN del editor descriptor, a
menos que sobrepase de un BZ explcito en la instruccin READ). Si es ZERO se
rellenan los espacios con ceros (mismo que BZ del editor descriptor, a menos que
sobrepase de un BN explcito en la instruccin READ).

blocksize

Expresin entera que especifica el tamao del buffer interno para la unidad (en
dytes).
En una aplicacin Windows, blocksize marca el tamao de la pantalla del buffer.
El tamao del buffer determina cuanto texto es guardado para la ventana. Marca el
buffer con WINBUFINF continuamente redistribuyendo memoria para salvar todo
el texto. Si blocksize no es especificado, el buffer tomar 2048 bytes.

file

Expresin tipo caracter. Si file es omitido, el compilador crea un archivo temporal


nico en la unidad especificada. El archivo temporal es borrado cuando este es
cerrado el programa termina normalmente.

form

Expresin tipo caracter que se evalua con FORMATTED, UNFORMATTED o


BINARY.
Si el acceso es secuencial, el predeterminado para form es FORMATTED, si el
acceso es directo, el predeterminado es UNFORMATTED.

iofocus

Expresin lgica que especifica si una nueva ventana en Windows tendr el enfoque
I/O. Si se omite, iofocus es .TRUE.

mode

Expresin tipo caracter evaluada con READ (los procesos sern slo de lectura en
el archivo), WRITE (los procesos sern solo de escritura en el archivo)
READWRITE (lectura y escritura en el archivo).
Si mode no es especificado, se abrirn los archivos con modo READWRITE.

recl

Expresin entera que especifica el largo de cada registro en bytes. Este parmetro es
requerido para archivos de acceso directo, y es ignorado para archivos secuenciales.

share

Expresin tipo caracter. Los valores aceptados de share son:


'COMPAT' Modo compatible (modo dado por DOS). Cuando un archivo es
abierto en modo compatible, el usuario original (el proceso que abre
el archivo) puede abrir el archivo en modo compatible un nmero
limitado de veces. Otro usuario no puede abrir el archivo.
Un archivo que haya sido abierto en otro modo, no podr ser abierto
en modo compatible.
'DENYRW' Modo de no lectura-escritura. Mientras el archivo sea abierto en este
modo, otros procesos no podrn abrirlo.
'DENYWR' Modo de no escritura. Mientras el archivo sea abierto en este modo,
otros procesos no podrn abrirlo para escritura.
'DENYRD'
Modo de no lectura. Mientras el archivo sea abierto en este modo,
otros procesos no puedrn abrirlo para lectura.
'DENYNONE' Ningn modo. (modo predeterminado por OS/2). Mientras el archivo
sea abierto en este modo, algunos procesos podrn abrirlo en
cualquier modo (excepto el modo compatible).

status

Expresin tipo caracter evaluada con OLD, NEW, UNKNOWN


(predeterminado) SCRATCH.

10

PROGRAMACIN APLICADA A SISTEMAS ELCTRICOS DE POTENCIA

FERNANDO TOLEDO2

'OLD'

El archivo debe de existir. Si el archivo existe, este es abiero. En caso


contrario, ocurre un error de I/O.
Si se abre un archivo secuencial y escribes en ste o lo cierras sin
moverlo primero hasta el final de ste, se sobreescribir en el
archivo. (Abriendo con ACCESS = APPEND se posiciona
automticamente al final del archivo).
'NEW'
El archivo no debe de existir. Si no existe, ste es creado. En caso
contrario se produce un error de I/O.
Si se abre el archivo con la opcin STATUS=NEW, y se cierra con
STATUS=KEEP, o si el programa terminara sin cerrar el archivo,
ste es creado permanentemente.
'SCRATCH' Crea archivos temporales, los cuales son borrados cuando son
cerrados o la ejecucin del programa termina.
'UNKNOWN' Si existe el archivo lo abre, en caso contrario lo crea.
title

Expresin tipo caracter que es evaluado como una cadena, con apertura en la barra
de ttulos de una pequea ventana dentro de una aplicacin Windows. El ttulo
predeterminado identifica la ventana como una unidad y da el nmero archivo (esto
es, TITLE=UNIT ndonde n es el nmero de unidades.

PARAMETER(nombre=expresin [[, nombre=expresin...)


Asigna a nombre el valor de expresin.
nombre
Nombre simblico.
expresin
Una expresin. La expresin puede incluir nombres simblicos slo si stos
nombres fueron definidos previamente con una instruccin PARAMETER dentro
del programa.
PAUSE [[prompt
Suspende la ejecucin del programa hasta que se teclee el nmero o cadena de caracteres
especificados por prompt. Si no es especificado, se tomar como ENTER.
prompt
Cualquier caracter o entero desde 0 hasta 99,999

11

Você também pode gostar