Introducción a Pseint
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.
Es decir, PseInt es un editor e intérprete de programas escritos en PseudoCódigo. Su interfaz gráfica permite crear, almacenar, ejecutar y corregir fácilmente programas en PseudoCódigo.
La sencillez del lenguaje PseudoCódigo lo hacen ideal para la enseñanza de la programación. Permite escribir programas con instrucciones condicionales (Si-Entonces-Sino, Segun) y ciclos (Mientras, Hasta Que, Para), y también usar valores numéricos (números decimales), lógicos, caracteres y arreglos. También provee funciones de entrada/salida y algunas funciones matemáticas.

Historia y creacion de Pseint

El software comenzó a desarrollarse en octubre de 2003 utilizando Borland C++ Builder debido a que era esta la herramienta que recomendaba la cátedra (por la facilidad que brinda para el desarrollo de interfaces visuales) y estar presente en los laboratorios de la facultad. Comencé con una prueba de concepto, ya que era el primer proyecto que iba a desarrollar con C++. A esta inexperiencia con el lenguaje le atribuyo algunos errores de diseño y muchas desprolijidades o ineficiencias en la implementación que con el tiempo fuí notando y, cuando se podía, corrigiendo. Al ser este un software para uso exclusivamente didáctico, no se presentan grandes problemas de rendimiento (no se tiene que interpretar algoritmos de miles de lineas sumamente complejos) por los que puedo tomarme ciertas libertades en la implementación. Más aún, se debe tener en cuenta que el objetivo principal del intérprete no es sólo interpretar un buen código, sino también señalar correctamente los errores de uno incorrecto. La versión original, presentado el 29 de diciembre del mismo año, tenía cientos de errores latentes, sólo corría bajo Windows y se limitaba a interpretar el algoritmo o marcar sus errores de sintaxis. El pseudocódigo interpretable era estrictamente el que desarrollaban los apuntes de la asignatura escritos por el Ingeniero Horacio Loyarte y el Doctor Diego Milone. Sugerí en el cuatrimestre siguiente a los responsables de la cátedra ofrecer el software a sus futuros alumnos, pero no obtuve (al menos de parte de los alumnos) la respuesta esperada, por lo que el proyecto pareció terminar allí.

Casi dos años más tarde, gracias a la lista de correo del Grupo de Usuarios de Linux del Litoral(Lugli) llegó a mi la invitación a participar en la recopilación de software libre educativo para el CD Actividades Educativas con Software Libre de la colección ??? que se distribuiría gratuitamente entre los docentes que lo solicitaran promocionado por el Ministerio de Educación de la Nación y llevado a cabo por los grupos gleducar, solar y educ.ar. Sugerí entonces a travez de una lista de correo creada para tal recopilación la inclusión del PSeInt en dicho CD. Por fortuna y azar, uno de los mayores responsables de la recopilación, el profesor Román Gelbort, resultó ser profesor de programación en un colegio secundario, lo que generó gran entusiasmo y me motivó a retomar el desarrollo. Uno de los primeros pasos fué crear el proyecto en SourceForge y publicar así el software bajo la Licencia Pública General (GPL). El siguiente paso fue comenzar a portarlo al sistema operativo GNU/Linux. El intérprete propiamente dicho estaba escrito mayormente en ANSI/ISO C++ por lo que no presentó mayores dificultades, pero la interfaz gráfica debió desarrollarse desde cero, eligiendose para tal fin la librería GTK+ por estar esta presente en la mayoría de las distribuciones de Linux y tener yo alguna experiencia en la utilización de la misma. Finalmente, el día de la presentación del CD, viajé con algunos de los responsables del mismo a Buenos Aires, y conocí personalmente a Patricia Chechele, una de las testers oficiales de la recopilación y profesora de informática, quien además de demostrar gran simpatía por el intérprete, más tarde aportaría numerosos reportes de bugs y sugerencias de gran utilidad.

Luego de esto, sobrevino una etapa de corrección de errores sin grandes avances, hasta que en mayo de 2006 comencé a desempeñarme como ayudante de cátedra de Fundamentos de Programación y Programación Orientada a Objetos en la UNL, comenzando primero como pasante, y luego, en agosto del mismo año, asumiendo el cargo interino luego de concursar por el mismo. Esta posición me permitió observar a los alumnos utilizando el software, encontrar y corregir errores, y realizar ciertas observaciones que derivaron en la implementación de las características de Ayuda Rápida y Diagrama de Flujo. También en este año, presentamos junto con el Ingeniero Horacio Loyarte el trabajo Desarrollo de un Intérprete de Pseudocódigo para la Enseñanza de Algorítmica Computacional en el I Congreso de Tecnologia en Educación y Educación en Tecnología en La Plata. Allí recibí también algunas sugerencias que llevaron a la incorporación del Menu de Comandos. Finalmente, en octubre de 2006, presenté el trabajo Desarrollo de un Software Intérprete de Pseudocódigo para la Enseñanza de Fundamentos de Programación en el 1er Encuentro de Jovenes Investigadores de Universidades de Santa Fe.

Imagen de las primeras versiones de Pseint:

Objetivos de Pseint

OBJETIVO El objetivo principal de este Capítulo es capacitar al estudiante en los conceptos básicos de algoritmos, que le permitan obtener la destreza necesaria para diseñar sus propios algoritmos. DISEÑO DE ALGORITMOS

Se trata de un intérprete de Pseudo código completamente en español, su nombre es PSEINT.

Muchas veces una de las cosas que se les hace más difícil a los nuevos estudiantes de informática es aprender la sintaxis, ya que normalmente o mejor dicho siempre está en inglés. Siempre me digo a mí y a mis compañeros por que no existía algo que en vez de utiliza “for” usara “para” o en lugar de “if” usásemos “si”, pues hoy he visto que si existe. El objetivo de PSEINT es introducir al mundo de la programación de manera sencilla y lo mejor de todo es ¡Software Libre! con licencia GPL.

Para que sirve PSeInt?

   PSeInt está pensado para asistir a los estudiantes que se inician en la construcción de programas o algoritmos computacionales. El pseudocódigo se suele utilizar como primer contacto para introducir conceptos básicos 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 lógica de los algoritmos.


Caracteristicas y Funcionalidades de PSeInt:

  • Presenta herramientas de edición básicas para escribir algoritmos en pseudocodigo en español
  • Permite la edición simultánea de múltiple algoritmos
  • Presenta ayudas para la escritura
    • Autocompletado
    • Ayudas Emergentes
    • Plantillas de Comandos
    • Coloreado de Sintaxis
    • Indentado Inteligente
  • Puede ejecutar los algoritmos escritos

         
Para obtener mas imagenes visita:

http://pseint.sourceforge.net/

http://pseint.uptodown.com/screen

http://pseint.malavida.com/imagenes

Algoritmos

Un programa escrito en PseudoCódigo comienza con la palabra clave Proceso seguida del nombre del programa, luego le sigue una secuencia de instrucciones y finaliza con la palabra FinProceso.

 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>; 

Se pueden introducir comentarios luego de una instrucción, o en líneas separadas, mediante el uso de la doble barra ( // ). Todo lo que precede a //, hasta el fin de la línea, no será tomado en cuenta al interpretar el algoritmo.

Note que no puede haber instrucciones fuera del programa, aunque sí 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.

Acerca de constantes, identificadores y palabras reservadas

  • Los identificadores, o nombres de variables, deben constar sólo de letras y números, comenzando siempre con una letra.
  • Las constantes de tipo carácter se escriben entre comillas ( ” ).
  • En las constantes numéricas, el punto ( . ) es el separador decimal.
  • Las constantes lógicas son Verdadero y Falso.
  • Las palabras reservadas no llevan acentos. Por ejemplo, Segun, Dimension.

Versioones de Pseint:

29/12/2003: Primera presentación oficial de PSeInt (v1.0 para Windows) en el exámen final de Programación I.

23/10/2011: Nueva version: Se corrigieron algunos errores, se agregaron algunas palabras clave adicionales para hacer la sintaxis más flexible y se atualizó parte de la ayuda.

Para obtener mas informacion ingresa:

http://pseint.sourceforge.net/noticias.php

constantes, identificadores y palabras reservadas:

Asignación

La instrucción de asignación permite almacenar una valor en una variable.

 <variable> <- <expresión> ; 

Al ejecutarse la asignación, primero se evalúa la expresión de la derecha y luego se asigna el resultado a la variable de la izquierda. El tipo de la variable y el de la expresión deben coincidir.

Ejemplos :

 var <- 1; // asigna el número 1 a var Acumulador <- Acumulador + 1; // incrementa el valor del Acumulador en 1 

Entrada

La instrucción Leer permite ingresar información desde el ambiente.

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

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

La instrucción Escribir permite mostrar valores al ambiente.

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

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:

Escribir "Ingrese el nombre:"; Escribir "Resultado:" , x*2 ; 

Dimensionamiento

La instrucción Dimension permite definir un arreglo, indicando sus dimensiones.

Dimesion <identificador> (<maxl>,...,<maxN>); 

Esta instrucción define un arreglo con el nombre indicado en <indentificador> y N dimensiones. Los N parámetros indican la cantidad de dimensiones y el valor máximo de cada una de ellas. La cantidad de dimensiones puede ser una o más, y la máxima cantidad de elementos debe ser una expresión numérica positiva.

Se pueden definir más de un arreglo en una misma instrucción, separándolos con una coma (,).

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

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

Ejemplos:

Dimension Alumnos (10); Leer Alumno (1); Dimension Tabla (10,5,3), Resultados (5); Escribir Tabla (1,3,2); 

Condicional

La secuencia de instrucciones ejecutadas por la instrucción Si-Entonces-Sino depende del valor de una condición lógica.

 Si <condición> Entonces <instrucciones> Sino <instrucciones> FinSi 

Al ejecutarse esta instrucción, se evalúa la condición y se ejecutan las instrucciones que correspondan: las instrucciones que le siguen al Entonces si la condición es verdadera, o las instrucciones que le siguen al Sino si la condición es falsa. La condición debe ser una expresión lógica, que al ser evaluada retorna Verdadero o Falso.

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
Si deseas mas informacion ingresa a: http://pseint.sourceforge.net/manual.html#Acerca_de_constantes.2C_identificadores_y_palabras_reservadas

Operadores Logicos

Operador Significado Ejemplo
Relacionales
> Mayor que 3>2
< Menor que ‘ABC'<‘abc’
= Igual que 4=3
<= Menor o igual que ‘a'<=’b’
>= Mayor o igual que 4>=5
Lógicos
& Conjunción (y). (7>4) & (2=1) //falso
| Disyunción (o). (1=1 | 2=1) //verdadero
~ Negación (no). ~(2<5) //falso
Algebraicos
  Suma  
* Multiplicación
/ División
^ Potenciación

La jerarquía de los operadores matemáticos es igual a la del álgebra, aunque puede alterarse mediante el uso de paréntesis.

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

La función raíz cuadrada no debe recibir un argumento negativo. La función exponencial no debe recibir un argumento menor o igual a cero.

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 :

 Para <-3 hasta 5 hacer a<-; 

Caracter no válido

Se encontró un caracter no permitido en el PseudoCódigo. Ejemplos: &, %, #, \, -, °. Estos símbolos sólo pueden aparecer dentro de constantes de tipo caracter.

Constante o Identificador 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 :

 Escribir 1erVar; // No puede empezar con número Tot <- Tot + Primer_Var; // el símbolo '_' no puede ser parte de un identificador Escribir 3.4.5; // el número tiene dos puntos decimales Escribir Para; // 'Para' es una palabra reservada Te dejo el link para que te informes mas hacerca de los mensajes de error 
http://pseint.sourceforge.net/manual.html#Operadores

El Pseudo-código

 Las características del este pseudolenguaje fueron propuestas en 2001 por el responsable de la asignatura Fundamentos de Programación (Horacio Loyarte) de la carrera de Ingeniería Informática de la FICH-UNL. Las premisas son: 
  • Sintaxis sencilla
  • Manejo de las estructuras básicas de control
  • Solo 3 tipos de datos básicos: numérico, caracter /cadenas de caracteres y lógico (verdadero-falso).
  • Estructuras de datos: arreglos Todo algoritmo en pseudocógido 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 más instrucciones, cada una terminada en punto y coma. Las acciones incluyen operaciones de entrada y salida, asignaciones de variables, condicionales si-entonces o de selección múltiple y/o lazos mientras, repetir o para.
  • Videos relacionados con Pseint:

Cancion Oficaial de la Ligue Champions

himno-uefa-champions-league-uefa

Anuncios