ANEXO
PSEUDOCÓDIGO
El Consejo Técnico del EGELCCo decidió establecer un pseudocódigo, con el objeto de que los
reactivos que se expresen conforme a éste cumplan con la gramática y sintaxis establecidas y, de
esta manera, todos los sustentantes del examen puedan resolver los reactivos expresados en
pseudocódigo.
1. Convenciones
La relación de convenciones empleadas en el pseudocódigo es la siguiente:
· El pseudocódigo se escribe empleando la fuente Times New Roman
· Las palabras reservadas del pseudocódigo se muestran en negritas
· Los puntos “...” indican la posibilidad de repetir algún elemento del pseudocódigo
· Cuando exista la posibilidad de elegir algún elemento a partir de un conjunto de
elementos, éstos se listarán separados por el símbolo “|”
· Las diferentes opciones o posibilidades de uso del pseudocódigo se listan con
viñetas
· El pseudocódigo posee las características siguientes:
§ Se emplean oraciones en lenguaje natural, donde cada una se refiere a una
actividad general o específica
§ Se utiliza un lenguaje común, sin palabras rebuscadas
§ Se evitan errores gramaticales, abreviaturas y puntuaciones
2. Tipos de datos
Los tipos de datos básicos son:
· str ing cadena de caracteres
· integer número entero
· r eal número real
· boolean falso o verdadero
Estos tipos de datos se declaran de acuerdo con las formas siguientes:
· tipo variable1
· tipo variable2, variable3,...,variablen
· tipo variablen1, variablen2,...,variablenm = valor
donde: tipo puede ser str ing, integer, r eal o boolean.
3. Estructuras de datos
Las estructuras de datos son:
· arreglos
tipo array1[rango1,...,rangon], ... ,array2[rango1,...,rangon]
donde: rangon: número de localidades deseadas. La primera localidad se
referencia con uno.
tipo: es alguno de los tipos de datos básicos o alguna estructura de
datos.
· registros
Declaración:r ecor d nombre_registro
tipo variable1
.. ...
tipo variablen
end
Creación de un registro:nombre_registro registro
La referencia a un campo de un registro se efectúa de la forma:
registro.nombre_campo
· archivos
Declaración:file nombre_archivo
· clases
Declaración:class nombre_clase
variables y funciones miembros
end
Instanciación de un objeto:nombre_clase objeto
La referencia a un campo de una clase se efectúa de la forma:
objeto.nombre_campo. El llamado a una función de una clase se efectúa
de la forma: objeto.nombre_función(lista_parámetros)
4. Operadores
· Aritméticos:
· + suma
· - resta
· * multiplicación
· / división
· = igual
· <> diferente
· < menor que
· > mayor que
· <= menor o igual que
· >= mayor o igual que
· lógicos:
· AND La expresión será verdadera si y sólo si ambas expresiones son
verdaderas
· OR La expresión será verdadera si al menos una expresión es verdadera
· XOR La expresión será verdadera si y sólo si ambas expresiones son diferentes
(verdadero y falso, o viceversa)
· NOT El valor de la expresión es la negación de la expresión original
NOTA: LA PRECEDENCIA DE LOS OPERADORES LA ESTABLECERÁN LOS
PARÉNTESIS.
5. Operaciones de cadenas
Las funciones para cadenas son las siguientes:
· length(nombre_de_la_cadena) Regresa un valor entero que “contiene” la
longitud de la cadena nombre_de_la_cadena
· substr ing(nombre_de_la_cadena,posición_inicial,longitud) Regresa una
cadena, en donde:
· posición_inicial es la posición a partir de la cual se copiará el
contenido de nombre_de_la_cadena
· longitud es el número de caracteres que se copiarán
La forma para copiar el contenido de una cadena hacia otra es:
cadena_1 = cadena_2
La concatenación de cadenas puede ser:
· cadena_1 = cadena_2 + cadena_3
· cadena_1 = cadena_1 + cadena_2
6. Comentarios
· comentario
· /*línea1
línea2
...
línean*/
7. Estructuras de control
· Asignación:
variable = valor | expresión | variable
· Secuenciación:
· e1
e2
.
en
· o bien: e1, e2, ..., en
· Condición:
· if c1 then
e1
· if c1 then
e1
else
e2
· case variable | expresión of
valor1: e1
valor2: e2
. . .
valorn: en
other wise: ex
end
donde: other wise es opcional
· Iteraciones condicionales:
· while c1
e1
· do
e1
until c1
· for variable = valor_inicial to c1, incremento | decremento
e1
Notas:
· Es posible efectuar combinaciones de las estructuras de control de secuenciación,
condición e iteración condicional
· en puede ser una asignación, alguna estructura de control, combinación de estas
últimas o una secuenciación delimitada por las palabras reservadas de: begin y end
· cn es una condición
· Se recomienda que los pseudocódigos posean una indentación consistente
8. Funciones o procedimientos
func nombre_función (lista_parámetros): tipo
begin
e1
.
en
r etur n variable | expresión | valor
end
donde:
· lista_parámetros, : tipo y r etur n son opcionales
· Para llamar a una función o procedimiento se escribe: nombre_función
(lista_parámetros)
· lista_parámetros en la definición de la función es de la forma:
tipo variable1, tipo variable2, ..., tipo variablen
· lista_parámetros en el llamado a la función es de la forma:
variable1, variable2, ..., variablen
9. Operaciones de entrada/salida
· r ead(variable1, variable2, ..., variablen)
Lee una(s) variable(s) del teclado
· wr ite(“texto1”,..., “texton”, variable1,..., variablen)
Despliega texto(s) o el valor de una(s) variable(s) en el monitor
· open(archivo, r ead | wr ite | append | r ead/wr ite)
Abre un archivo en algún modo (escritura, lectura, adición o lectura/escritura,
respectivamente)
· close(archivo)
Cierra un archivo previamente abierto
· r eadfile(archivo, nombreRegistro)
Lee un registro de archivo dejando la información leída en nombreRegistro
· wr itefile(archivo, nombreRegistro)
Escribe o sobreescribe el contenido de nombreRegistro en el registro actual de archivo
· EOF(archivo)
Regresa verdadero si es el fin de archivo y falso en caso contrario
· ERROR(archivo)
Regresa verdadero si se presentó un error en la última instrucción ejecutada
en un archivo y falso en caso contrario
· seek(archivo, inicio | final | registro n)
Se posiciona al inicio, al final o en un registro x de archivo
· position(archivo)
Regresa el número de registro actual en archivo
...Continuación
|