ANEXO I Diagramas sintácticos en orden alfabético
ANEXO I Diagramas sintácticos en orden alfabético
ANEXO I Diagramas sintácticos en orden alfabético
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>ANEXO</strong> ILas palabras son como las hojas;cuando abundan, poco fruto hay <strong>en</strong>tre ellas.- Alexander Pope<strong>Diagramas</strong> <strong>sintácticos</strong> <strong>en</strong> ord<strong>en</strong> <strong>alfabético</strong>ABRIRAbrir(ID ,NOM_RISTRA, Lectura)EscrituraNOTA: ID debe ser de tipo ficheroLectura/EscrituraASIGNACIÓNVARIABLE
CONSTANTECONST_SIN_SIGNO-CONS_SIN_SIGNONUM_ENTERONUM_REAL'CARÁCTER'IDNULOverdaderofalsoNOTA: ID debe ser de tipo constanteCOPIAsub(EXPRESIÓN ,EXPRESIÓN ), EXPRESIÓNCORRECTOCorrecto( ID)NOTA: ID debe ser de tipo fichero
CREARFICHEROCrearFichero(NOM_RISTRA )CUERPOASIGNACIÓNSISEGÚNMIENTRASREPETIRPARALLAMADA_PROCENTRADA/SALIDALIBERAR_MEMORIALLAMADAS_FICHEROPARARDEVOLVERDEC_ALGORITMODECLARACIONESalgoritmoIDfin algoritmoCUERPO
DEC_CONSTANTEconstante(s)TIPO_CONSTANTE ID = CONSTANTEDEC_ENUMERADOID , IDDEC_ESTRUCTURAestructuraESTRUCTURA_HETEROESTRUCTURA_HOMODEC_FUNCIONfunción TIPO ID ( )ID,DEC_VARIABLE_SUBfin funciónCUERPODEC_GLOBALESDEC_TIPODEC_CONSTANTESDEC_VARIABLES
DEC_PROCEDIMIENTOprocedimi<strong>en</strong>toID ( ) DEC_VARIABLES_SUBIDCUERPO,retornarfin procedimi<strong>en</strong>toDEC_PUNTEROpunteroDEC_SUBPROGRAMADEC_FUNCIÓNDEC_PROCEDIMIENTODEC_SUBRANGONOM_TIPOCONSTANTE. .CONSTANTENOTA: CONSTANTE debe ser de tipo ordinalDEC_TIPODEC_ESTRUCTURADEC_ENUMERADOtipoIDesDEC_SUBRANGOfin tipoDEC_PUNTERO
DEC_TIPO_VARIABLES,TIPOID[CONSTANTE],NOTA: CONSTANTE debe ser de tipo ordinalDEC_VAR_CAMPOS,TIPOID[INDICES]DEC_VARIABLESvariable(s)DEC_TIPO_VARIABLEDEC_VARIABLES_SUBvariablesMODODEC_VAR_CAMPOSDECLARACIONESDEC_CONSTANTESDEC_VARIABLES
DEVOLVERdevolverEXPRESIONDÍGITO. . .0 1 2 7 8 9ELIMINAREliminar( ID)NOTA: ID debe ser de tipo ficheroENTRADA/SALIDAINSTRUCCIÓN_LEERINSTRUCCIÓN_ESCRIBIRESCAPE\ n\ t
ESCRIBIREscribir( ID, EXPRESIÓN )NOTA: ID debe ser de tipo ficheroESCRIBIRLÍNEAEscribirLínea( ID, VARIABLE )NOTA: ID debe ser de tipo ficheroESTRUCTURA HETEROcampos(s)DEC_VAR_CAMPOSESTRUCTURA HOMOTIPO[ INDICES]ETIQUETAS,CONSTANTECONSTANTE..CONSTANTENOTA: CONSTANTE debe ser de tipo ordinal
EXPRESIÓNEXPR_LÓGICA\/EXPR_LÓGICAEXPR_LÓGICAEXPR_RELACIONAL/\EXPR_RELACIONALEXPR_RELACIONALEXPR_SIMPLE OP_RELACIONAL EXPR_SIMPLEEXPR_SIMPLETERMINO- + -TERMINO
FACTORVARIABLECONSTANTE( EXPRESIÓN)noFACTORLLAMADA_FUNCIÓNRESERVA_MEMORIAFUNCIONES_RISTRAFUNCIONES_FICHEROFUNCIONES_ORDINALESFUNCIONES_MATEMÁTICASCADENA_CARACTEREStamaño(ID )NOTA: ID debe ser de tipo definido por el usuarioFINFICHEROFinFichero(ID )NOTA: ID debe ser de tipo ficheroFINLINEAFinLínea(ID )NOTA: ID debe ser de tipo fichero
FUNCIONES FICHEROABRIRCREARFICHEROFINFICHEROTAMAÑOPOSICIÓNFINLÍNEAFUNCIONES_MATEMÁTICASabs(EXPRESIÓN )s<strong>en</strong>(EXPRESIÓN)cos(EXPRESIÓN)tan(EXPRESIÓN)FUNCIONES_ORDINALESPrimero(ID )Último(ID )Ord<strong>en</strong>(EXPRESIÓN )Valor(ID NUM_ENTERO )Sucesor(EXPRESIÓN )Predecesor(EXPRESIÓN )NOTA: ID debe ser de tipo definido por el usuarioEXPRESIÓN debe ser de tipo ordinal
FUNCIONES_RISTRALONGITUDCOPIAPOS_ristraIDLETRA-LETRA-DÍGITOINDICES..CONSTANTECONSTANTEID,NOTA: ID debe ser de tipo definido por el usuarioCONSTANTE debe ser de tipo ordinalINSTRUCCIÓN_LEERleerVARIABLE,
IRAIrA(ID ,EXPRESIÓN )NOTA: ID debe ser de tipo ficheroLEERLeer( ID, EXPRESIÓN )NOTA: ID debe ser de tipo ficheroLEERLÍNEALeerLínea( ID, VARIABLE )NOTA: ID debe ser de tipo ficheroLETRA. . . a. . .A Z zLIBERAR_MEMORIALiberar( VARIABLE )
LLAMADAS FICHEROCERRARLEERESCRIBIRRENOMBRARELIMINARSALTARLÍNEANUEVALÍNEACORRECTOLEERLÍNEAESCRIBIRLÍNEAIRALLAMADA_FUNCIÓNID( )EXPRESIÓN,NOTA: ID debe ser de tipo funciónLLAMADA_PROCID( )EXPRESIÓN,NOTA: ID debe ser de tipo procedimi<strong>en</strong>to
LONGITUDlon(EXPRESIÓN )NOTA: EXPRESIÓN debe ser de tipo ristraMIENTRASmi<strong>en</strong>trasEXPRESIÓNhacer CUERPO fin mi<strong>en</strong>trasMODO<strong>en</strong>tradasalida<strong>en</strong>trada/salidalocal(es)NOM_RISTRACADENA_CARACTERESIDNOTA: ID debe ser de tipo ristra
NOM_TIPOTIPO_BASICOIDNOTA: ID debe ser de tipo definido por el usuarioNUM_ENTERODÍGITONUEVALÍNEANuevaLínea( ID)NOTA: ID debe ser de tipo ficheroNUM_REALDÍGITO.DÍGITOOP_RELACIONAL< >=
PARAparaIDdesde EXPRESIÓN1 hasta EXPRESIÓN2EXPRESIÓNpasofin para CUERPO hacerNOTA: ID debe ser una variable declaradaPOSICIÓNPosición(ID )NOTA: ID debe ser de tipo ficheroPOS_ristrapos(EXPRESIÓN ,EXPRESIÓN )NOTA: EXPRESIÓN debe ser de tipo ristraPROGRAMADEC_ALGORITMODEC_GLOBALESDEC_SUBPROGRAMARENOMBRARR<strong>en</strong>ombrar( NOM_RISTRA , NOM_RISTRA )
REPETIRrepetirCUERPOhastaqueEXPRESIÓNRESERVA_MEMORIATomarBloque(TIPO )SALTARLÍNEASaltarLínea( ID)NOTA: ID debe ser de tipo ficheroSENTENCIA_ESCRIBIRescribirEXPRESIÓN,SIsiEXPRESIÓN<strong>en</strong>toncesCUERPOsi noCUERPOfin si
SEGUNsegúnEXPRESIÓNhacerETIQUETAS:CUERPOfin segúnCUERPO<strong>en</strong> otro casoTAMAÑOTamaño(ID )NOTA: ID debe ser de tipo ficheroTERMINOFACTORmod*/FACTORTIPONOM_TIPOTIPO_RISTRATIPO_FICHERODEC_PUNTERO
TIPO BASICOnatural(es)<strong>en</strong>tero(s)/a(s)real(es)lógico(s)/a(s)carácter/caracteresTIPO CONSTANTETIPO_BASICOTIPO_RISTRATIPO_FICHEROFicheroFicheroTextoTIPO_RISTRAristraristra fija[ NUM_ENTERO]ristra variable
VARIABLEID[ EXPRESIÓN ],ID->