# PSeInt

PSeInt es un software libre educativo multiplataforma dirigido a personas que se inician en la programación.

## Descripción

PSeInt es la abreviatura de los estados de computación de PSeudocódigo Intérprete, una herramienta educativa creada en Argentina, utilizada principalmente por estudiantes para aprender los fundamentos de la programación y el desarrollo de la lógica. Es un software muy popular de su tipo y es ampliamente utilizado en universidades de Hispanoamérica y España.
Utiliza pseudocódigo para la solución de algoritmos.

## Propósito de 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 además algunas herramientas adicionales que le ayuden a encontrar errores y comprender la lógica de los algoritmos.
PSeInt es una herramienta para asistir a un estudiante en sus primeros pasos en programación. Mediante un simple e intuitivo pseudolenguaje en español (complementado con un editor de diagramas de flujo), le permite centrar su atención en los conceptos fundamentales de la algoritmia computacional, minimizando las dificultades propias de un lenguaje y proporcionando un entorno de trabajo con numerosas ayudas y recursos didácticos.

## Características

* Lenguaje Autocompletado
* Ayudas Emergentes
* Plantillas de Comandos
* Soporta procedimientos y funciones
* Indentado Inteligente
* Exportación a otros lenguajes (C, C++, C#, Java, PHP, JavaScript, Visual Basic .NET, Python, Matlab)
* Graficado, creación y edición de diagramas de flujo
* Editor con coloreado de sintaxis
* Foro oficial de PSeInt
* Software multiplataforma sobre Microsoft Windows, GNU/Linux y Mac OS X, en diciembre de 2016 empezó un desarrollo independiente para Android.

## Reconocimientos

PSeInt fue uno de los Proyectos del Mes en SourceForge en tres oportunidades, desde el 1 de septiembre de 2015, desde el 19 de diciembre de 2016 y desde el 16 de noviembre de 2019. Asimismo tiene la distinción Open Source Excellence (más de 100 000 descargas totales o 10 000 descargas mensuales por primera vez.)

## Pantalla de Inicio

Al iniciar la aplicación se muestra la estructura básica desde donde es posible escribir el código.

### Para empezar

Es muy importante, aunque no obligatorio, documentar el código (comentar algunas líneas) para que permita rápidamente identificar qué partes del mismo hace qué cosa, ya que a medida que se avance en el desarrollo y aumente considerablemente la cantidad de líneas, se hará más difícil encontrar en cuál de ellas se encuentra la sentencia que hace algo específico. Esto se consigue utilizando la doble barra "//"

## Estructuras de Control

Los ejemplos que se muestran en esta sección corresponde al mismo programa, pero construido en los tres ciclos While (Mientras), Repeat (Repetir) y For (Para).

### La Estructura Repetitiva Mientras (While)

El while es una estructura que se ejecuta mi Este tipo de estructura es recomendable cuando dentro del programa se desconoce el momento en que se va abandonar el ciclo. Por ejemplo, si necesitamos realizar un programa que solicite números y los sume hasta que el usuario ingrese un número negativo, como no se sabe en qué momento el usuario ingresará un valor negativo, la estructura recomendable es el While (Mientras). La característica principal del While es que este primero pregunta y después hace.

### La Estructura Repetitiva Repetir (Do While)

Funciona de igual manera que el While (Mientras), la gran diferencia es que primero hace y después pregunta, y en lugar de abandonar su ejecución al obtener una respuesta falsa en la pregunta de control, lo hace al momento de obtener una verdadera.

### La Estructura Repetitiva Para (For)

Es una estructura repetitiva que se emplea cuando se conoce cuantos giros debe realizar el ciclo, por ejemplo, si se realiza un algoritmo que le solicite al usuario cuantos números va a sumar, el algoritmo conocería la cantidad de giros a partir de la cantidad de números ingresados por el usuario.