Escolar Documentos
Profissional Documentos
Cultura Documentos
Introducción
PseInt (Pseudo Intérprete) es un Entorno de Desarrollo Integrado (IDE, por sus siglas
en inglés) para PseudoCódigo, un lenguaje de programación imperativa simple y en
castellano.
Elementos de la Ventana
• Barra de Título
• Menú de Opciones
• Barra de Acceso Rápido
• Área de Trabajo
• Área de Información de Ejecución
• Barras de scroll
Información de Ejecución
Otro posible problema que puede presentarse al ejecutar la aplicación es que un mensaje
indique que no se encontró el intérprete. Debe asegurarse de ejecutar VPSeInt.exe desde
el directorio donde instaló la aplicación. Si intentó actualizar el intérprete, consulte la
documentación adjunta.
Consideraciones Previas
En las secciones siguientes, la sintaxis del lenguaje PseudoCódigo (es decir, las reglas
que permiten decir si un programa está bien escrito) es definida usando una notación
similar a la notación BNF (Backus-Naur Form).
Las palabras y símbolos que pertenecen al pseudocódigo se escriben tal como deben ir,
por ejemplo: Proceso; mientras que los nombres de variables y otros símbolos y
expresiones que pueden variar son escritos entre corchetes angulares, por ejemplo:
<condición>.
Algoritmos
Proceso <nombre>
<secuencia de instrucciones>
FinProceso
Donde una secuencia de instrucciones es una lista de una o más instrucciones, cada una
terminada en punto y coma.
<instrucción>;
<instrucción>;
...
<instrucción>;
Note que no puede haber instrucciones fuera del programa, aunque sí comentarios.
Asignación
Ejemplos :
Entrada
Esta instrucción lee N valores desde el ambiente (en este caso el teclado) y los asigna a
las N variables mencionadas. Pueden incluirse una o más variables, por lo tanto el
comando leerá uno o más valores.
Ejemplos :
Leer Cantidad;
Leer Valorl,Valor2,Valor3;
Salida
Esta instrucción imprime al ambiente (en este caso en la pantalla) los valores obtenidos
de evaluar N expresiones. Dado que puede incluir una o más expresiones, mostrará uno
o más valores.
Ejemplos:
Dimensionamiento
Se pueden definir más de un arreglo en una misma instrucción, separándolos con una
coma (,).
Ejemplos:
Condicional
Si <condición>
Entonces
<instrucciones>
Sino
<instrucciones>
FinSi
La cláusula Entonces debe aparecer siempre, pero la cláusla Sino puede no estar. En
ese caso, si la condición es falsa no se ejecuta ninguna instrucción y la ejecución del
programa continúa con la instrucción siguiente.
Ejemplos :
Si A>B
Entonces
Escribir "Es mayor";
Sino
Escribir "Es menor o igual";
FinSi
Leer Muchos;
Si Muchos = 10
Entonces
Escribir "Demasiados articulos.";
Sino
Escribir "Solo se consideraran los 10 primeros.";
FinSi
Selección Multiple
La secuencia de instrucciones ejecutada por una instrucción Segun depende del valor de
una variable numérica.
Cada opción está formada por uno o más números separados por comas, dos puntos y
una secuencia de instrucciones. Si una opción incluye varios números, la secuencia de
instrucciones asociada se debe ejecutar cuando el valor de la variable es uno de esos
números.
Opcionalmente, se puede agregar una opción final, denominada De Otro Modo, cuya
secuencia de instrucciones asociada se ejecutará sólo si el valor almacenado en la
variable no coincide con ninguna de las opciones anteriores.
Ejemplo :
Leer a;
Segun a Hacer
0,1,2,3: Escribir "Desaprobado";
4,5,6: Escribir "Condicional";
10: Escribir "Excelente!";
De Otro Modo: Escribir "Aprobado";
FinSegun
6
Mientras Hacer
Note que las instrucciones del cuerpo del ciclo pueden no ejecutarse nunca, si al evaluar
por primera vez la condición resulta ser falsa.
Ejemplo :
Repetir
<instrucciones>
Hasta Que <condición>
Note que, dado que la condición se evalúa al final, las instrucciones del cuerpo del ciclo
serán ejecutadas al menos una vez.
7
Además, a fin de evitar ciclos infinitos, el cuerpo del ciclo debe contener alguna
instrucción que modifique la o las variables involucradas en la condición de modo que
en algún momento la condición sea verdadera y se finalice la ejecución del ciclo.
Ejemplo :
Repetir
Tot <- Tot+a;
Escribir "Ingrese un número (0 para salir)";
Leer a;
Hasta Que a=0;
Escribir "Total:",Tot;
Para
Para <variable> <- <inicial> Hasta <final> ( Con Paso <paso> ) Hacer
<instrucciones>
FinPara
Ejemplo :
Operadores
Lógicos
& Conjunción (y). (7>4) & (2=1) //falso
| Disyunción (o). (1=1 | 2=1) //verdadero
~ Negación (no). ~(2<5) //falso
Suma
Algebraicos
* Multiplicación
/ División
^ Potenciación
Funciones Matemáticas
Función Significado
RC(X) Raíz Cuadrada de X
ABS(X) Valor Absoluto de X
LN(X) Logaritmo Natural de X
EXP(X) Función Exponencial de X
SEN(X) Seno de X
COS(X) Coseno de X
ATAN(X) Arcotangente de X
TRUNC(X) Parte entera de X
REDON(X) Entero más cercano a X
Mensajes de Error
La siguiente es una lista de errores posibles en un programa que son detectados por el
intérprete, junto con su explicación. Los errores están en orden alfabético.
Asignación incompleta
Este error se produce por la ausencia de alguna de las dos partes de una asignación: la
variable o la expresión a asignar.
Ejemplos :
9
Caracter no válido
Los identificadores deben comenzar siempre con una letra y pueden continuar sólo con
letras o números. Tampoco pueden usarse palabras reservadas como identificadores.
Este error puede ser causado también por una constante incorrectamente escrita.
Ejemplos :
Demasiados Parámetros
Ocurre cuando una instrucción que admite sólo un parámetro recibe más de uno.
Ejemplo:
Ejemplo:
a <- 0;
Escribir 7/a; // la operación 7/a equivale a 7/0 y es imposible.
La cláusula Entonces siempre debe estar después de un Si, de lo contrario está mal
colocada.
Este error es ocasionado por una constante de tipo caracter incorrecta. Se deben
delimitar con comillas ( " ) tanto el inicio como el final de la misma.
10
Ejemplo:
Este error se produce cuando en alguna expresión se abre un paréntesis que luego no se
cierra. Se deben cerrar todos los paréntesis que se abren.
Ejemplo:
Escribir (3+4/(2*a);
Todas las estructuras deben tener un comienzo y un final dentro del algoritmo. Este
error se produce porque falta la palabra reservada FinSi/FinPara/FinMientras/Hasta
Que/FinSegun o porque una de esas palabras está mal ubicada.
Falta condición
Ejemplos:
Si
Hasta Que
Según Hacer Mientras
Falta Hacer
Las condiciones lógicas en las instrucciones Para, Mientras y Segun deben ser
seguidas por la palabra Hacer.
Ejemplos:
Falta Hasta
Ejemplos:
Ejemplo:
Cada instrucción en una secuencia debe finalizar siempre con punto y coma (;).
Ejemplos:
Escribir 1
Leer a
Dimension b(10)
Faltan Parámetros
Este error se produce cuando se intenta ejecutar una instrucción sin los parámetros
mínimos necesarios.
Ejemplos:
Faltan subíndices
Ejemplo:
Dimensión C;
Estas estructuras deben tener su comienzo y su final en el mismo nivel, es decir que si
están anidadas deben incluirse completamente una dentro de otra. En el caso de un
programa, el Proceso es único y debe ser el primero en abrirse y el último en cerrarse.
Identificador no válido
Los identificadores deben comenzar siempre con una letra y pueden continuar sólo con
letras o números. No pueden ser palabras reservadas.
Ejemplos :
Todas las acciones deben estar contenidas dentro del programa. Cualquier acción
posterior a la palabra FinProceso ocasiona este error.
Este error ocurre cuando una instrucción que no espera parámetros los recibe. FinSi,
Repetir, FinPara, FinMientras, FinProceso y FinSegun no llevan parámetros.
Logaritmo de 0 o negativo
Ejemplos:
a <-'b';
c <- 5+a; // a es caracter
Según a; // a es caracter
Si 1='3' // '3' es caracter, 1 es numérica
Sólo las instrucciones secuenciales (Leer, Escribir, Dimension, <-) deben finalizar con
punto y coma ( ; ).
Ejemplos:
Este error puede ser causado por acceder a un elemento de un arreglo utilizando una
cantidad de índices diferente a las dimensiones declaradas o al invocar una función
matemática con más de un parámetro.
Ejemplos:
Operador incorrecto
Ejemplos :
Parámetro nulo
Ejemplos :
Raíz de negativo
PseudoCódigo sólo trabaja con números reales, por lo que no se puede calcular la raíz
cuadrada de un número negativo.
Ejemplo :
Escribir 2+(2*a)-b) ;
Se esperaba <opción>:
La instrucción de selección múltiple Segun deben incluir al menos una opción. Para
estar bien construída, la opción debe constar de uno o más números, seguidos por dos
puntos ( : ) y luego la secuencia de instrucciones a ejecutar.
Ejemplo :
Segun a Hacer
Escribir b;
Se esperaba asignación
Ejemplo:
14
Este error se produce cuando en una instrucción Para se incluye un parámetro (u otra
instrucción) no válido.
Ejemplos :
Se esperaba Entonces
La instrucción condicional Si siempre debe tener una cláusula Entonces (es decir, una
secuencia de instrucciones a ejecutarse cuando la condición es verdadera).
Ejemplos :
Si a=1
Sino
Escribir 2;
FinSi
// Para evitar este error se puede negar la condición: a<>1
// y transformar la cláusula Sino en una cláusula Entonces
Este error se produce cuando se encuentran dos variables o constantes consecutivas sin
ningún separador en medio.
Ejemplo :
La cláusula Sino siempre debe estar dentro de un Si, de lo contrario está mal colocada.
Este error se produce cuando se usa como índice de un arreglo a un valor fuera de las
posiciones definidas en la instrucción Dimension que se usó para declarar el arreglo.
Ejemplo :
15
Dimension a(5);
Escribir a(6); // el arreglo a sólo tiene 5 elementos.