Sunteți pe pagina 1din 12

Para que sirve PSeInt?

PSeInt est pensado para asistir a los estudiantes que se inician en la construccin de programas o algoritmos computacionales. El pseudocdigo se suele utilizar como primer contacto para introducir conceptos bsicos como el uso de estructuras de control, expresiones, variables, etc, sin tener que lidiar con las particularidades de la sintaxis de un lenguaje real. Este software pretende facilitarle al principiante la tarea de escribir algoritmos en este pseudolenguaje presentando un conjunto de ayudas y asistencias, y brindarle ademas algunas herramientas adicionales que le ayuden a encontrar errores y comprender la lgica de los algoritmos.

Caracteristicas y Funcionalidades de PSeInt:


Presenta herramientas de edicin bsicas para escribir algoritmos en pseudocodigo en espaol Permite la edicin simultnea de mltiple algoritmos Presenta ayudas para la escritura o Autocompletado o Ayudas Emergentes o Plantillas de Comandos o Coloreado de Sintaxis o Indentado Inteligente Puede ejecutar los algoritmos escritos Permite ejecutar el algoritmo paso a paso controlando la velocidad e inspeccionando expresiones Puede confeccionar automticamente la tabla de prueba de escritorio Determina y marca los errores de sintaxis y en tiempo de ejecucion Genera diagramas de flujo a partir del algoritmo escrito Convierte el algoritmo de pseudocodigo a codigo C++ Ofrese un sistema de ayuda integrado acerca del pseudocdigo y el uso del programa (esta ltima, an en construccin) Incluye un conjunto de ejemplos de diferentes niveles de dificultad Es multiplataforma (probado en Microsoft Windows y GNU/Linux) Es totalmente libre y gratuito (licencia GPL)

EL PSEUDO CODIGO
Las caractersticas del este pseudolenguaje fueron propuestas en 2001 por el responsable de la asignatura Fundamentos de Programacin (Horacio Loyarte) de la carrera de Ingeniera Informtica de la FICH-UNL. Las premisas son: Sintaxis sencilla Manejo de las estructuras bsicas de control Solo 3 tipos de datos bsicos: numrico, caracter /cadenas de caracteres y lgico (verdadero-falso). Estructuras de datos: arreglos

Todo algoritmo en pseudocgido tiene la siguiente estructura general:


Proceso SinTitulo accion 1; accion 1; . . . accion n; FinProceso
Comienza con la palabra clave Proceso seguida del nombre del programa, luego le sigue una secuencia de instrucciones y finaliza con la palabra FinProceso. Una secuencia de instrucciones es una lista de una o ms instrucciones, cada una terminada en punto y coma. Las acciones incluyen operaciones de entrada y salida, asignaciones de variables, condicionales si-entonces o de seleccin mltiple y/o lazos mientras, repetir o para.

Asignacin

La instruccin de asignacin permite almacenar una valor en una variable.

<variable> <- <expresin> ;


Al ejecutarse la asignacin, primero se evala la expresin de la derecha y luego se asigna el resultado a la variable de la izquierda. El tipo de la variable y el de la expresin deben coincidir.

Entradas

La instruccin Leer permite ingresar informacin desde el ambiente.


Leer <variablel> , <variable2> , ... , <variableN> ;

Esta instruccin lee N valores desde el ambiente (en este caso el teclado) y los asigna a las N variables mencionadas. Pueden incluirse una o ms variables, por lo tanto el comando leer uno o ms valores.

Salidas

La instruccin Escribir permite mostrar valores al ambiente.


Escribir <exprl> , <expr2> , ... , <exprN> ;

Esta instruccin imprime al ambiente (en este caso en la pantalla) los valores obtenidos de evaluar N expresiones. Dado que puede incluir una o ms expresiones, mostrar uno o ms valores.

Dimensionamiento
La instruccin Dimension permite definir un arreglo, indicando sus dimensiones.
Dimesion <identificador> (<maxl>,...,<maxN>);
Esta instruccin define un arreglo con el nombre indicado en <indentificador> y N dimensiones. Los N parmetros indican la cantidad de dimensiones y el valor mximo de cada una de ellas. La cantidad de dimensiones puede ser una o ms, y la mxima cantidad de elementos debe ser una expresin numrica positiva. Se pueden definir ms de un arreglo en una misma instruccin, separndolos con una coma (,).

Dimension <ident1> (<max11>,...,<max1N>),..., <identM> (<maxM1>,...,<maxMN>)

Es importante notar que es necesario definir un arreglo antes de utilizarlo.

Condicional Si-Entonces

La secuencia de instrucciones ejecutadas por la instruccin Si-Entonces-Sino depende del valor de una condicin lgica.
Si <condicin> Entonces <instrucciones> Sino <instrucciones> FinSi
Al ejecutarse esta instruccin, se evala la condicin y se ejecutan las instrucciones que correspondan: las instrucciones que le siguen al Entonces si la condicin es verdadera, o las instrucciones que le siguen al Sino si la condicin es falsa. La condicin debe ser una expresin lgica, que al ser evaluada retorna Verdadero o Falso. La clusula Entonces debe aparecer siempre, pero la clusla Sino puede no estar. En ese caso, si la condicin es falsa no se ejecuta ninguna instruccin y la ejecucin del programa contina con la instruccin siguiente.

Seleccin Multiple

La secuencia de instrucciones ejecutada por una instruccin Segun depende del valor de una variable numrica.
Segun <variable> Hacer <nmero1>: <instrucciones> <nmero2>,<nmero3>: <instrucciones> <...> De Otro Modo: <instrucciones> FinSegun

Esta instruccin permite ejecutar opcionalmente varias acciones posibles, dependiendo del valor almacenado en una variable de tipo numrico. Al ejecutarse, se evala el contenido de la variable y se ejecuta la secuencia de instrucciones asociada con dicho valor. Cada opcin est formada por uno o ms nmeros separados por comas, dos puntos y una secuencia de instrucciones. Si una opcin incluye varios nmeros, la secuencia de instrucciones asociada se debe ejecutar cuando el valor de la variable es uno de esos nmeros. Opcionalmente, se puede agregar una opcin final, denominada De Otro Modo, cuya secuencia de instrucciones asociada se ejecutar slo si el valor almacenado en la variable no coincide con ninguna de las opciones anteriores.

Lazos Mientras

La instruccin Mientras ejecuta una secuencia de instrucciones mientras una condicin sea verdadera.
Mientras <condicin> Hacer <instrucciones> FinMientras
Al ejecutarse esta instruccin, la condicin es evaluada. Si la condicin resulta verdadera, se ejecuta una vez la secuencia de instrucciones que forman el cuerpo del ciclo. Al finalizar la ejecucin del cuerpo del ciclo se vuelve a evaluar la condicin y, si es verdadera, la ejecucin se repite. Estos pasos se repiten mientras la condicin sea verdadera. Note que las instrucciones del cuerpo del ciclo pueden no ejecutarse nunca, si al evaluar por primera vez la condicin

resulta ser falsa. Si la condicin siempre es verdadera, al ejecutar esta instruccin se produce un ciclo infinito. A fin de evitarlo, las instrucciones del cuerpo del ciclo deben contener alguna instruccin que modifique la o las variables involucradas en la condicin, de modo que sta sea falsificada en algn momento y as finalice la ejecucin del ciclo.

Lazos Repetir

La instruccin Repetir-Hasta Que ejecuta una secuencia de instrucciones hasta que la condicin sea verdadera.
Repetir <instrucciones> Hasta Que <condicin>
Al ejecutarse esta instruccin, la secuencia de instrucciones que forma el cuerpo del ciclo se ejecuta una vez y luego se evala la condicin. Si la condicin es falsa, el cuerpo del ciclo se ejecuta nuevamente y se vuelve a evaluar la condicin. Esto se repite hasta que la condicin sea verdadera. Note que, dado que la condicin se evala al final, las instrucciones del cuerpo del ciclo sern ejecutadas al menos una vez. Adems, a fin de evitar ciclos infinitos, el cuerpo del ciclo debe contener alguna instruccin que modifique la o las variables involucradas en la condicin de modo que en algn momento la condicin sea verdadera y se finalice la ejecucin del ciclo.

Lazos Para

La instruccin Para ejecuta una secuencia de instrucciones un nmero determinado de veces.


Para <variable> <- <inicial> Hasta <final> ( Con Paso <paso> ) Hacer <instrucciones> FinPara

Al ingresar al bloque, la variable <variable> recibe el valor <inicial> y se ejecuta la secuencia de instrucciones que forma el cuerpo del ciclo. Luego se incrementa la variable <variable> en <paso> unidades y se evala si el valor almacenado en <variable> super al valor <final>. Si esto es falso se repite hasta que <variable> supere a <final>. Si se omite la clusula Con Paso <paso>, la variable <variable> se incrementar en 1.

Operadores y Funciones
Este pseudolenguaje dispone de un conjunto bsico de operadores y funciones que pueden ser utilizados para la construccin de expresiones ms o menos complejas. Las siguientes tablas exhiben la totalidad de los operadores de este lenguaje reducido: Operador Relacionales > < = <= >= Logicos & | ~ Algebraicos * / ^ Multiplicacin Divisin Potenciacin Conjuncin (y). Disyuncin (o). Negacin (no). (7>4) & (2=1) //falso (1=1 | 2=1) //verdadero ~(2<5) //falso Suma Mayor que Menor que Igual que 3>2 'ABC'<'abc' 4=3 Significado Ejemplo

Menor o igual que 'a'<='b' Mayor o igual que 4>=5

La jerarquaa de los operadores matemticos es igual a la del lgebra, aunque puede alterarse mediante el uso de parntesis. A continuacin se listan las funciones integradas disponibles: Funcin RC(X) ABS(X) LN(X) EXP(X) SEN(X) COS(X) ATAN(X) Significado Raz Cuadrada de X Valor Absoluto de X Logaritmo Natural de X Funcin Exponencial de X Seno de X Coseno de X Arcotangente de X

TRUNC(X) Parte entera de X REDON(X) Entero ms cercano a X

Algunas Observaciones

Se pueden introducir comentarios luego de una instruccin, o en lneas separadas, mediante el uso de la doble barra ( // ). Todo lo que precede a //, hasta el fin de la lnea, no ser tomado en cuenta al interpretar el algoritmo. Note que no puede haber instrucciones fuera del programa, aunque si comentarios. Las estructuras no secuenciales pueden anidarse. Es decir, pueden contener otras adentro, pero la estructura contenida debe comenzar y finalizar dentro de la contenedora. Los identificadores, o nombres de variables, deben constar slo de letras y nmeros, comenzando siempre con una letra. Las constantes de tipo carcter se escriben entre comillas ( " ). En las constantes numricas, el punto ( . ) es el separador decimal. Las constantes lgicas son Verdadero y Falso.

Ejemplos Explicados
Pgina en construccin ;). Proximamente.

Las caractersticas del este pseudolenguaje fueron propuestas en 2001 por el responsable de la asignatura Fundamentos de Programacin (Horacio Loyarte) de la carrera de Ingeniera Informtica de la FICH-UNL. Las premisas son: Sintaxis sencilla Manejo de las estructuras bsicas de control Solo 3 tipos de datos bsicos: numrico, caracter /cadenas de caracteres y lgico (verdadero-falso). Estructuras de datos: arreglos

Todo algoritmo en pseudocgido tiene la siguiente estructura general:

Proceso SinTitulo accion 1; accion 1; . . . accion n; FinProceso


Comienza con la palabra clave Proceso seguida del nombre del programa, luego le sigue una secuencia de instrucciones y finaliza con la palabra FinProceso. Una secuencia de instrucciones es una lista de una o ms instrucciones, cada una terminada en punto y coma. Las acciones incluyen operaciones de entrada y salida, asignaciones de variables, condicionales si-entonces o de seleccin mltiple y/o lazos mientras, repetir o para.

Asignacin

La instruccin de asignacin permite almacenar una valor en una variable.

<variable> <- <expresin> ;

Al ejecutarse la asignacin, primero se evala la expresin de la derecha y luego se asigna el resultado a la variable de la izquierda. El tipo de la variable y el de la expresin deben coincidir.

Entradas

La instruccin Leer permite ingresar informacin desde el ambiente.


Leer <variablel> , <variable2> , ... , <variableN> ;

Esta instruccin lee N valores desde el ambiente (en este caso el teclado) y los asigna a las N variables mencionadas. Pueden incluirse una o ms variables, por lo tanto el comando leer uno o ms valores.

Salidas

La instruccin Escribir permite mostrar valores al ambiente.


Escribir <exprl> , <expr2> , ... , <exprN> ;

Esta instruccin imprime al ambiente (en este caso en la pantalla) los valores obtenidos de evaluar N expresiones. Dado que puede incluir una o ms expresiones, mostrar uno o ms valores.

Dimensionamiento
La instruccin Dimension permite definir un arreglo, indicando sus dimensiones.
Dimesion <identificador> (<maxl>,...,<maxN>);
Esta instruccin define un arreglo con el nombre indicado en <indentificador> y N dimensiones. Los N parmetros indican la cantidad de dimensiones y el valor mximo de cada una de ellas. La cantidad de dimensiones puede ser una o ms, y la mxima cantidad de elementos debe ser una expresin numrica positiva. Se pueden definir ms de un arreglo en una misma instruccin, separndolos con una coma (,).

Dimension <ident1> (<max11>,...,<max1N>),..., <identM> (<maxM1>,...,<maxMN>)

Es importante notar que es necesario definir un arreglo antes de utilizarlo.

Condicional Si-Entonces

La secuencia de instrucciones ejecutadas por la instruccin Si-Entonces-Sino depende del valor de una condicin lgica.
Si <condicin> Entonces <instrucciones> Sino <instrucciones> FinSi
Al ejecutarse esta instruccin, se evala la condicin y se ejecutan las instrucciones que correspondan: las instrucciones que le siguen al Entonces si la condicin es verdadera, o las instrucciones que le siguen al Sino si la condicin es falsa. La condicin debe ser una expresin lgica, que al ser evaluada retorna Verdadero o Falso. La clusula Entonces debe aparecer siempre, pero la clusla Sino puede no estar. En ese caso, si la condicin es falsa no se ejecuta ninguna instruccin y la ejecucin del programa contina con la instruccin siguiente.

Seleccin Multiple

La secuencia de instrucciones ejecutada por una instruccin Segun depende del valor de una variable numrica.
Segun <variable> Hacer <nmero1>: <instrucciones> <nmero2>,<nmero3>: <instrucciones> <...> De Otro Modo: <instrucciones> FinSegun

Esta instruccin permite ejecutar opcionalmente varias acciones posibles, dependiendo del valor almacenado en una variable de tipo numrico. Al ejecutarse, se evala el contenido de la variable y se ejecuta la secuencia de instrucciones asociada con dicho valor. Cada opcin est formada por uno o ms nmeros separados por comas, dos puntos y una secuencia de instrucciones. Si una opcin incluye varios nmeros, la secuencia de instrucciones asociada se debe ejecutar cuando el valor de la variable es uno de esos nmeros. Opcionalmente, se puede agregar una opcin final, denominada De Otro Modo, cuya secuencia de instrucciones asociada se ejecutar slo si el valor almacenado en la variable no coincide con ninguna de las opciones anteriores.

Lazos Mientras

La instruccin Mientras ejecuta una secuencia de instrucciones mientras una condicin sea verdadera.
Mientras <condicin> Hacer <instrucciones> FinMientras
Al ejecutarse esta instruccin, la condicin es evaluada. Si la condicin resulta verdadera, se ejecuta una vez la secuencia de instrucciones que forman el cuerpo del ciclo. Al finalizar la ejecucin del cuerpo del ciclo se vuelve a evaluar la condicin y, si es verdadera, la ejecucin se repite. Estos pasos se repiten mientras la condicin sea verdadera. Note que las instrucciones del cuerpo del ciclo pueden no ejecutarse nunca, si al evaluar por primera vez la condicin resulta ser falsa. Si la condicin siempre es verdadera, al ejecutar esta instruccin se produce un ciclo infinito. A fin de evitarlo, las instrucciones del cuerpo del ciclo deben contener alguna instruccin que modifique la o las variables involucradas en la condicin, de modo que sta sea falsificada en algn momento y as finalice la ejecucin del ciclo.

Lazos Repetir

La instruccin Repetir-Hasta Que ejecuta una secuencia de instrucciones hasta que la condicin sea verdadera.

Repetir <instrucciones> Hasta Que <condicin>


Al ejecutarse esta instruccin, la secuencia de instrucciones que forma el cuerpo del ciclo se ejecuta una vez y luego se evala la condicin. Si la condicin es falsa, el cuerpo del ciclo se ejecuta nuevamente y se vuelve a evaluar la condicin. Esto se repite hasta que la condicin sea verdadera. Note que, dado que la condicin se evala al final, las instrucciones del cuerpo del ciclo sern ejecutadas al menos una vez. Adems, a fin de evitar ciclos infinitos, el cuerpo del ciclo debe contener alguna instruccin que modifique la o las variables involucradas en la condicin de modo que en algn momento la condicin sea verdadera y se finalice la ejecucin del ciclo.

Lazos Para

La instruccin Para ejecuta una secuencia de instrucciones un nmero determinado de veces.


Para <variable> <- <inicial> Hasta <final> ( Con Paso <paso> ) Hacer <instrucciones> FinPara

Al ingresar al bloque, la variable <variable> recibe el valor <inicial> y se ejecuta la secuencia de instrucciones que forma el cuerpo del ciclo. Luego se incrementa la variable <variable> en <paso> unidades y se evala si el valor almacenado en <variable> super al valor <final>. Si esto es falso se repite hasta que <variable> supere a <final>. Si se omite la clusula Con Paso <paso>, la variable <variable> se incrementar en 1. Operadores y Funciones Este pseudolenguaje dispone de un conjunto bsico de operadores y funciones que pueden ser utilizados para la construccin de expresiones ms o menos complejas. Las siguientes tablas exhiben la totalidad de los operadores de este lenguaje reducido:

Operador Relacionales > < = <= >= Logicos & | ~ Algebraicos * / ^

Significado Mayor que Menor que Igual que

Ejemplo 3>2 'ABC'<'abc' 4=3

Menor o igual que 'a'<='b' Mayor o igual que 4>=5 Conjuncin (y). Disyuncin (o). Negacin (no). (7>4) & (2=1) //falso (1=1 | 2=1) //verdadero ~(2<5) //falso Suma Multiplicacin Divisin Potenciacin

La jerarquaa de los operadores matemticos es igual a la del lgebra, aunque puede alterarse mediante el uso de parntesis. A continuacin se listan las funciones integradas disponibles:

Funcin RC(X) ABS(X) LN(X) EXP(X) SEN(X) COS(X) ATAN(X)

Significado Raz Cuadrada de X Valor Absoluto de X Logaritmo Natural de X Funcin Exponencial de X Seno de X Coseno de X Arcotangente de X

TRUNC(X) Parte entera de X REDON(X) Entero ms cercano a X

Algunas Observaciones
Se pueden introducir comentarios luego de una instruccin, o en lneas separadas, mediante el uso de la doble barra ( // ). Todo lo que precede a //, hasta el fin de la lnea, no ser tomado en cuenta al interpretar el algoritmo. Note que no puede haber instrucciones fuera del programa, aunque si comentarios. Las estructuras no secuenciales pueden anidarse. Es decir, pueden contener otras adentro, pero la estructura contenida debe comenzar y finalizar dentro de la contenedora. Los identificadores, o nombres de variables, deben constar slo de letras y nmeros, comenzando siempre con una letra. Las constantes de tipo carcter se escriben entre comillas ( " ). En las constantes numricas, el punto ( . ) es el separador decimal. Las constantes lgicas son Verdadero y Falso.

Ejemplos Explicados
Pgina en construccin ;). Proximamente.

S-ar putea să vă placă și