PSeInt: ¿Qué es? Descargar y usar PSeInt. Ejemplos

Como sabemos, la mayoría de las plataformas de desarrollo de software están en inglés, incluidos los menús, los mensajes de sistema y por supuesto, las propias sentencias o instrucciones del lenguaje de programación. Esto para muchos es una dificultad, ya que además del propio lenguaje de programación, aquellos que están comenzando en estas actividades deberán aprender también un lenguaje extranjero para entender por completo las características y funciones del programa usado para sus desarrollos.

Esto por supuesto plantea la dificultad de tener que pensar las estructuras que darán forma al software en idioma inglés, con instrucciones, sintaxis y opciones del software usado para escribir también en inglés. El mejor ejemplo de ellos es cuando tenemos que plasmar la idea para el software que queremos desarrollar en el papel. Quien ya haya transitado estos caminos sabe que deberá hacerlo mediante un diagrama de flujo que incluye palabras o abreviaturas de palabras foráneas, que además, la mayoría de las veces están compuestas por una o más voces.

pseudocodigo-con-pseint- (1)

Es decir que además de pensar el programa que estamos desarrollando en palabras en otro idioma, como “Writein”, también deberemos plasmarlo para su desarrollo en una forma que es dominada también por el idioma inglés. Son bastantes obstáculos, sobre todo para un estudiante joven que recién empieza. Sin embargo, existen algunas herramientas que nos permitirán enfocarnos en la tarea más importante de desarrollar software: aprender a escribir y a comprender el código.

Índice de Contenidos
  1. Aprendizaje y pseudocódigo
  2. Que es PSeInt
  3. Para que sirve PSeInt
  4. Características de PSeInt
    1. Estructuras de control
    2. Condicionales
    3. Repetitivas
  5. Descargar e instalar PSeInt Gratis
  6. Como usar PSeInt
  7. Los Botones de comando de PSeInt
    1. Acciones secuenciales
    2. Acciones selectivas o interrogativas
    3. Acciones repetitivas o interactivas
    4. SubProcesos que devuelven valores
  8. El Area de trabajo de PSeInt
  9. Programas ejemplos
    1. PROGRAMA SUMA
    2. PROGRAMA COLOQUIAL
    3. PROGRAMA ORDENAR LISTA
    4. PROGRAMA MISIL
    5. PROGRAMA TATETI

Aprendizaje y pseudocódigo

Afortunadamente, con el objetivo de ayudar a los estudiantes de informática que recién están dando sus primeros pasos en la carrera se utiliza un pseudolenguaje de programación llamado “Pseudocódigo”, que en cierta forma permitirá a los estudiantes enfocarse en el propio desarrollo y no tanto en actividades secundarias, como por ejemplo el estudio del idioma inglés, que pueden aprenderse más adelante, con mayor tiempo, lo que mayormente redunda en un mejor aprendizaje. El pseudocódigo, utilizado habitualmente en muchas aulas, puede ser considerado fácilmente como una especie de alternativa en español a un lenguaje de programación, que nos puede ser de gran utilidad para comenzar a comprender las ideas y conceptos básicos de la programación y los verdaderos lenguajes de programación.

pseudocodigo-con-pseint- (2)

En este sentido, la primera ventaja del pseudocódigo es que no hace falta aprender obligatoriamente inglés para poder utilizarlo, y además es mucho más flexible para poder plasmar ideas para que los demás las entiendan, independientemente de los conocimientos de cada uno. Es decir que ambas características logran que el pseudocódigo es convierta en una herramienta fantástica de aprendizaje.

Sin embargo, el estudiante todavía no había podido resolver el problema de encontrar una herramienta de software que le permita crear este seudocódigo con comodidad y con la posibilidad de poder compartir su desarrollo para trabajarlo de manera colaborativa, por ejemplo, de forma sencilla y rápida.

Si bien algunas casas de estudio ofrecen a sus estudiantes herramientas desarrolladas para la interpretación de pseudocódigo, útiles para que el estudiante que recién comienza pueda comenzar a desarrollar su software pensando en su propio idioma, lo cierto es que no tenían ninguna aplicación que les permitiera desarrollar seudocódigo directamente en una interfaz creada para ello. Todo básicamente eran soluciones para volcar en papel, a la vieja usanza.

pseudocodigo-con-pseint- (3)

Que es PSeInt

Todo ello ahora es prácticamente historia, ya que podemos contar con un verdadero intérprete de pseudocódigo, con el cual escribir nuestro boceto de programa y experimentar con los diversos resultados. Esta herramienta es PSeInt, que además de ser completamente gratuito ofrece muchas características que lo convierten en una herramienta absolutamente indispensable para aprender a programar, cualquiera sea el lenguaje que hayamos elegido para hacerlo.

PSeInt es una herramienta de desarrollo de pseudocódigo libre y de código abierto, lo que significa que además de gratis, su código puede ser modificado con mejoras y redistribuido para que los demás usuarios también tomen ventaja de estas mejoras.

Pero además de esto, PSeInt es una herramienta que ha sido diseñada para ofrecer a los estudiantes de carreras de informática una forma sencilla de focalizarse en los conceptos de los algoritmos y su estrecha relación con la programación, con el objetivo de disminuir las dificultades de tener que aprender un lenguaje de programación y sus particularidades antes de poder lanzarse a entender como realmente funciona todo ello.

pseudocodigo-con-pseint- (4)

Para cumplir con este objetivo, PSeInt ofrece algunas herramientas como un editor de diagramas de flujo, que en conjunto con un pseudolenguaje de programación en español le permiten al usuario expresar de manera intuitiva y sencilla un programa, aún sin tener nociones fuertes en ningún lenguaje de programación.

PSeInt es gratuito, y se encuentra disponible para descargar e instalar para Windows, Mac y Linux pulsando sobre este enlace.

Para que sirve PSeInt

PSeInt fue desarrollado, entre otros muchos objetivos, para poder ofrecer un método simple para que los estudiantes de carreras relacionadas con la informática pudieran estructurar sus propios programas en un lenguaje más natural, y que además fuera independiente del lenguaje de programación usado.

Mediante esta app, el estudiante estará en condiciones de tomar contacto de manera más sencillo con los conceptos básicos de la programación, como por ejemplo las estructuras de control, las expresiones, variables y todos los demás recursos y herramientas propias del mundo de la programación.

Lo mejor de todo ello es que el estudiante puede llegar a este punto a través del seudocódigo, es decir que no va a tener que relacionarse, por lo menos en esta instancia, con la sintaxis de cualquier lenguaje de programación, lo que se traduce con el paso del tiempo en una mejor comprensión de los conceptos acerca de la lógica de los algoritmos, y no detenerse en las particularidades del lenguaje elegido para desarrollar la idea de estudio.

pseudocodigo-con-pseint- (5)

Características de PSeInt

PSeInt es una app gratuita y de código abierto, y como es costumbre en este ámbito, su código se nutre de la experiencia y conocimientos de los usuarios que lo utilizan, además de sus desarrolladores, por supuesto. Esto significa que cada característica que ofrece el programa está bien pensada y desarrollada, teniendo en cuenta escenarios reales.

Es por este motivo que PSeInt ofrece una buena cantidad de herramientas y características con las cuales desarrollar y escribir algoritmos en pseudocódigo, además de la ventaja principal que significa que lo podamos hacer totalmente, tanto los algoritmos como la interfaz e instrucciones del programa, en idioma español.

Algunas de las características más significativas de PSeInt son por ejemplo la posibilidad de repetir texto y sintaxis mediante Autocompletado, el resaltado de bloques lógicos y el coloreado de sintaxis, opciones ambas que nos permite trabajar con mucha más comodidad, así como el sistema de seguimiento de errores, que incluye la posibilidad de señalar los errores de sintaxis que vayamos cometiendo conforme escribimos, es decir que trabaja en tiempo real, ofreciendo descripciones muy detalladas de dichos errores, que incluyen las causas y soluciones más frecuentes.

Cabe destacar que también es capaz de señalar errores en tiempo de ejecución. Asimismo, ofrece otras características realmente muy útiles para la edición, como por ejemplo la incorporación de plantillas de comandos, así como listados de funciones, operadores y variables, además brinda indentado Inteligente.

pseudocodigo-con-pseint- (6)

También PSeInt permite trabajar de la manera más cómoda posible con algoritmos, ya que con la herramienta podremos generar y editar el diagrama de flujo del algoritmo, seleccionar entre trabajar con diagramas clásicos y los de Nassi-Shneiderman, conocidos también como estructogramas o diagramas de Chapin. Además permite la edición simultánea de múltiples algoritmos.

Otras características relacionadas con los algoritmos son la posibilidad de interpretar, es decir ejecutar, los algoritmos escritos, así como modificarlos y poder observar dichos cambios directamente en la ejecución, lo que permite que no tengamos que ingresar nuevamente todos los datos. También nos posibilita ejecutar el algoritmo escrito paso a paso controlando la velocidad de ejecución, lo que nos permite poder inspeccionando variables y expresiones para poder corregirlas o modificarlas de acuerdo a dicha inspección.

Además, le permite al usuario deshacer una ejecución del algoritmo con el propósito de volverla a iniciar o repetirla desde cualquier punto, sin dudas una excelente opción para inspeccionar donde podemos habernos equivocado o mejorar la calidad del procedimiento. Por último en este apartado, podemos contar con la posibilidad de construir automáticamente una tabla de prueba de escritorio.

pseudocodigo-con-pseint- (7)

Con respecto al pseudolenguaje utilizado, cabe destacar que el mismo es configurable, lo que nos permite adaptarlo a casi cualquier situación de algoritmo, también ofrece la opción de crear diferentes perfiles de configuración, algo realmente muy útil cuando tenemos que crear diversos algoritmos para diferentes clientes o instituciones.

Sin embargo, la opción más importante de todas, sin dudas, es la posibilidad que ofrece PSeInt de convertir el algoritmo de pseudocódigo creado con la app a otros lenguajes de programación, entre los que se destacan C, C++, C#, Java, JavaScript, MatLab, Pascal, PHP, Python 2, Python 3, QBasic y Visual Basic.

Por último, cabe destacar de PSeInt su sistema de ayudas integradas, las cuales nos brindarán abundante información con la cual solucionar cualquier problema o duda que tengamos con el programa o el pseudocódigo.

pseudocodigo-con-pseint- (8)

Estructuras de control

Básicamente, las estructuras de control en Pseint se dividen en condiciones y repetitivas:

Condicionales

Condicional Si-Entonces: La secuencia de instrucciones ejecutadas por la instrucción Si-Entonces-Sino dependerá del valor de una condición lógica. Ejemplo:

Si <condición>

Entonces

<instrucciones>

Sino

<instrucciones>

FinSi

Cuando se ejecuta esta instrucción, se evalúa la condición y se ejecutan las instrucciones que sean necesarias: 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 deberá ser una expresión lógica, que al ser evaluada retorna un valor “Verdadero” o “Falso”.

En este punto, la cláusula “Entonces” debe aparecer siempre, pero la cláusula “Sino” puede no estar presente. En ese caso, si la condición es falsa no se ejecuta instrucción alguna y la ejecución del programa continúa con la instrucción que sigue.

Selección Multiple: La secuencia de instrucciones ejecutada por una instrucción “Según” depende del valor de una variable numérica. Ejemplo:

Segun <variable> Hacer

<número1>: <instrucciones>

<número2>,<número3>: <instrucciones>

<...>

De Otro Modo: <instrucciones>

FinSegun

En este punto, la mencionada instrucción permite ejecutar de manera opcional varias acciones posibles, dependiendo del valor que se haya almacenado en una variable de tipo numérico. Al ejecutarse, se evalúa el contenido de la variable y se ejecuta la secuencia de instrucciones asociada con dicho valor.

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.

De forma opcional, también se puede añadir una opción final, denominada “De Otro Modo”, cuya secuencia de instrucciones asociada se ejecutará sólo si el valor que se haya almacenado en la variable no coincide con ninguna de las opciones anteriores.

Repetitivas

Lazos Mientras: La instrucción “Mientras” ejecuta una secuencia de instrucciones mientras una condición sea verdadera. Ejemplo:

Mientras <condición> Hacer

<instrucciones>

FinMientras

Cuando esta instrucción se ejecuta, la condición se evalúa para comprobar si resulta “Verdadera”, en ese caso, se ejecuta una vez la secuencia de instrucciones que forman el cuerpo del ciclo. Al finalizar la ejecución del cuerpo del ciclo se vuelve a evaluar la condición y, si es “Verdadera”, la ejecución se repite. Estos pasos se repiten mientras la condición sea la misma, es decir verdadera. Cabe destacar en este punto que las instrucciones del cuerpo del ciclo pueden no ejecutarse nunca, si al evaluar por primera vez la condición resulta ser “Falsa”.

pseudocodigo-con-pseint- (9)

Si la condición siempre es verdadera, al ejecutar esta instrucción se produce un ciclo infinito. A fin de evitarlo, las instrucciones del cuerpo del ciclo deben contener alguna instrucción que modifique la o las variables involucradas en la condición, de modo que ésta sea falsificada en algún momento y así finalice la ejecución del ciclo.

Lazos Repetir: La instrucción “Repetir-Hasta Que” ejecuta una secuencia de instrucciones hasta que la condición sea verdadera. Ejemplo:

Repetir

<instrucciones>

Hasta Que <condición>

Al ejecutarse esta instrucción, la secuencia de instrucciones que forma el cuerpo del ciclo se ejecuta una vez y luego se evalúa la condición para comprobar si la misma es verdadera o falsa. Si la condición resulta “Falsa”, entonces el cuerpo del ciclo se ejecuta nuevamente y se vuelve a evaluar la condición. Esto se repite hasta que la condición sea “Verdadera”.

Cabe destacar que debido a que la condición en este caso se evalúa al final, las instrucciones del cuerpo del ciclo serán ejecutadas al menos una vez. Por ello, con el propósito 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.

El caso que el usuario utilice sintaxis flexible en las opciones de PSeInt se permite opcionalmente utilizar “Mientras Que” en lugar de “Hasta Que”, de modo que el conjunto de acciones contenidas en el bucle se ejecuta mientras que la condición sea “Verdadera”. En este punto, cabe destacar que la palabra “Que” es el elemento que diferencia el uso de la palabra “Mientras” en la estructura repetir de la estructura “Mientras”. Esto significa que en el caso de omitirse la palabra que se considera como el comienzo de un bucle “Mientras” en lugar del final de un bucle “Repetir”.

pseudocodigo-con-pseint- (10)

Lazos Para: La instrucción “Para” ejecuta una secuencia de instrucciones un número determinado de veces. Ejemplo:

Para <variable> <- <inicial> Hasta <final> Con Paso <paso> Hacer

<instrucciones>

FinPara

Básicamente el ejemplo significa que 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 de ello se incrementa la variable <variable> en <paso> unidades y se evalúa si el valor que se haya almacenado en <variable> superó al valor <final>. Si esto es falso se repite hasta que <variable> supere a <final>. Si se omite la cláusula Con Paso <paso>, la variable <variable> se incrementará en 1.

En el caso que se habilite la sintaxis flexible en la configuración del lenguaje en PSeInt se pueden utilizar dos alternativas. La primera de estas variantes consiste en reemplazar el operador de asignación por la palabra clave “Desde”:

Para <variable> Desde <inicial> Hasta <final> Con Paso <paso> Hacer ...

De esta forma, la lectura de la sentencia resulta mucho más obvia a los ojos de los operadores y lectores. Además, con la sintaxis flexible de PSeInt, en el caso de que no se especifique el paso pero el valor final es menor al inicial, el bucle recorrerá los valores en orden inverso como si el paso fuera -1.

La segunda variante solo es útil en el caso de tener que recorrer arreglos de una o más dimensiones. Se introduce con la construcción “Para Cada” seguida de un identificador, la palabra clave “De” y otro identificador:

Para Cada <elemento> De <Arreglo> Hacer ...

En este caso, el segundo identificador debe corresponder a un arreglo. El primero será el que variará en cada iteración. El ciclo realizará tantas iteraciones como elementos contenga el arreglo, y en cada uno el primer identificador servirá para referirse al elemento del arreglo al que se refiere.

Descargar e instalar PSeInt Gratis

Si queremos tomar ventaja de todas las características y opciones que nos ofrece PSeInt a la hora de trabajar con seudocódigo, diagramas de flujo y algoritmos, lo podemos hacer fácilmente si seguimos las instrucciones que se detallan a continuación.

Paso 1

Lo primero que tenemos que hacer es acceder a la página de descarga oficial de PSeInt, a la cual podemos acceder pulsando en el enlace que proporcionamos más arriba en este mismo post.

pseudocodigo-con-pseint- (11)

Paso 2

Una vez que accedimos al sitio oficial de PSeInt, lo que tenemos que hacer es pulsar sobre el enlace “Descargar el programa”.

Paso 3

Esto directamente nos enviará a una nueva página en la cual deberemos seleccionar la versión correcta para el sistema operativo que tiene instalado nuestra computadora. Cabe destacar que hay disponibles versiones para Linux, Windows y Mac, además de una versión portable.

Paso 4

Para seleccionar el tipo de instalador, lo único que tenemos que hacer es pulsar sobre el enlace correspondiente a nuestro sistema operativo.

Paso 5

A partir de este punto, el sistema nos enviará a una página nueva y la descarga comenzará de forma completamente automática.

pseudocodigo-con-pseint- (12)

Paso 6

Una vez que el software se haya descargado, lo que usualmente sucede en la carpeta “Descarga” de nuestro SO, ya podremos ejecutarlo.

Paso 7

Para instalar PSeInt en nuestra computadora, lo único que tenemos que hacer es pulsar sobre el instalador y seguir las instrucciones que nos brinda el asistente. Una vez que el sistema haya terminado, se mostrará el icono de PSeInt en el escritorio y se iniciará la aplicación.

A partir de este punto, ya estaremos en condiciones de poder comenzar a programar seudocódigo con PSeInt.

pseudocodigo-con-pseint- (13)

Como usar PSeInt

Una vez que hemos instalado PSeint, y lo abrimos por primera vez, aparecerá un cuadro de diálogo solicitándonos que seleccionemos el tipo de perfil utilizar, con el propósito de evitar problemas con el lenguaje. Para los propósitos de esta guía acerca de cómo empezar a usar PSeInt vamos a seleccionar el modo de sintaxis “Estricto” y el modo “Flexible”.

pseudocodigo-con-pseint- (14)

El primero de estos modos nos permite tener un acercamiento más adecuado a un lenguaje de programación real, es decir que se debe seguir al pie de la letra las convenciones de sintaxis de seudocódigo propuestas por Pablo Novara, el desarrollador y docente argentino detrás de PSeInt.

pseudocodigo-con-pseint- (15)

Por otra parte también vamos a utilizar el modo de sintaxis “Flexible”, la cual nos será de mucha utilidad con códigos que nos están escritos de forma demasiado estricta. Una vez que hemos seleccionado el tipo de sintaxis adecuado a nuestro proyecto, seguimos adelante con la configuración de PSeInt.

pseudocodigo-con-pseint- (16)

Cuando la app se ejecuta por completo, ya estaremos dentro del entorno de PseInt, el cual se encuentra compuesto por diferentes partes, las cuales básicamente son el área de “Comandos”, las “Pestañas de trabajo”, el “Area de trabajo” y el “Listado de funciones y variables”. Además contamos con un área de ayuda rápida, la que ofrece información en tiempo real acerca de cada instrucción.

pseudocodigo-con-pseint- (17)

Los Botones de comando de PSeInt

Este apartado contiene una serie de botones que nos permitirán escribir el código que necesitamos, Cada botón que encontramos aquí, al ser presionado, escribirá la sintaxis correcta de seudocódigo, las que ubicará dentro de las líneas Proceso y FinProceso, en el “Area de trabajo”. Cabe destacar en este punto que cada botón que presionamos ofrecerá información relativa a su función en el área de “Ayuda rápida”.

Una vez que hemos comprendido el concepto, ya podemos pasar a describir los diferentes botones del área de comandos, los que en definitiva serán los que nos permitirán escribir nuestro código.

Acciones secuenciales

pseudocodigo-con-pseint- (18) Botón Escribir
Función del botón Nos posibilita mostrar en pantalla algún tipo de dato, o varios de ellos, siempre separados por una coma (,). Estos datos deben estar entre comillas (""). Cabe destacar que la variable nunca debe ir entre paréntesis.
Ejemplo de uso Escribir "hola mundo"; Escribir "hola mundo, hola, 2, c";
pseudocodigo-con-pseint- (19) Botón Leer
Función del botón Esta acción nos brinda la posibilidad de recibir valores por teclado y almacenarlos en variables.
Ejemplo de uso Leer a; //recibe el valor y lo almacena en a.

Leer a, b, c; //recibe 3 valores y los almacena en la variable que a, b y c respectivamente.

Cabe destacar que la variable nunca va entre paréntesis

pseudocodigo-con-pseint- (20) Botón Asignar
Función del botón Este botón nos permite almacenar un valor en una variable.
Ejemplo de uso c <-2; por lo tanto c=2 (c posee el valor dos).

Acciones selectivas o interrogativas

pseudocodigo-con-pseint- (21) Botón Si
Función del botón Este botón nos ofrece la posibilidad de evaluar la propiedad de una variable, y en función de esta, llevar a cabo una acción determinada.
Ejemplo de uso Si cant_numeros != 0 entonces //sentencias

FinSi

pseudocodigo-con-pseint- (22) Botón Según
Función del botón El botón Según nos permite evaluar la propiedad de una variable, y después de comparar una a una las salidas con la evaluación, llevar a cabo una acción determinada.
Ejemplo de uso Segun num_dia_sem Hacer

1: Escribir "Laura";

2: Escribir "Agustina";

3: Escribir "Mabel";

4: Escribir "Graciela";

5: Escribir "Micaela";

6: Escribir "Candela";

7: Escribir "Claudia";

De Otro Modo:

Escribir "No es un nombre de varón";

FinSegun

Acciones repetitivas o interactivas

pseudocodigo-con-pseint- (23) Botón Mientras
Función del botón Este botón nos permite realizar llevar a cabo acciones específicas determinadas por la condición del Mientras.
Ejemplo de uso num != 0 Hacer

Leer num;

cant_num<-cant_num+1;

FinMientras

pseudocodigo-con-pseint- (24) Botón Repetir
Función del botón Este botón nos permite repetir una serie de acciones hasta que se cumpla una determinada condición. Esta acción la determina el operador =, cuya función es que salga del bucle.
Ejemplo de uso Leer num;

cant_num<-cant_num+1;

Hasta Que num = 0;

pseudocodigo-con-pseint- (25) Botón Para
Función del botón Este botón nos presenta un cierto rango de valores, y para cada uno de ellos realiza una determinada acción.
Ejemplo de uso i <- 1 Hasta 10 Con Paso 1 Hacer

Escribir i;

FinPara

pseudocodigo-con-pseint- (26) Funciones y SubProcesos
Función del botón SubProcesos: Permite añadir Funciones/SubProcesos al programa que estamos escribiendo.
SubProcesos que no devuelven valor, solo realizan una tarea específica
Ejemplo de uso SubProceso ImprimirResultado(x)

Escribir "El resultado es: ",x;

FinSubProceso

SubProcesos que devuelven valores

Ejemplos de uso SubProceso x <- LeerDato(cosa)

Definir x Como Entero;

Escribir "Ingrese ", cosa,": ";

Leer x;

FinSubProceso

El Area de trabajo de PSeInt

El Area de trabajo es el lugar de la interface de PSeInt en donde vamos a escribir nuestro pseudocódigo. Obviamente los números a la izquierda de las instrucciones nos indicarán la posición de las mismas, es decir que nos indicativos del número de línea del programa que estamos escribiendo.

pseudocodigo-con-pseint- (27)

También en este espacio podremos observar las llamadas “Pestañas de trabajo”, las cuales cumplen la misma función que las pestañas de un navegador, es decir nos permiten realizar varios trabajos a la vez y saltar entre ellos con un simple clic. Estas están ubicadas en la parte superior del área de trabajo.

En el caso que todavía no les hayamos puesto nombre a nuestros proyectos, cosa que debemos hacer ni bien avanzamos unas pocas líneas de trabajo, las pestañas tendrán como nombre por defecto “sin_título”. Para diferenciar la pestaña activa, es decir aquella con la que estamos trabajando, se le añade un asterisco (*).

pseudocodigo-con-pseint- (28)

Esta posibilidad que nos ofrece PSeInt de poder abrir varios archivos en pseudocódigo simultáneamente nos será realmente muy útil, sobre todo para comparar y realizar cambios de manera rápida a los algoritmos y pesudocódigo.

Otra de las herramientas que podemos encontrar en la interfaz de PSeInt es el llamado Listado de funciones y variables, las cuales se encuentran ubicadas en el borde izquierdo de la interfaz, y a su vez están separadas en dos pestañas. La pestaña de “Variables”, ubicada primero verticalmente, y la pestaña “Funciones”, inmediatamente debajo de esta.

En estas pestañas, cuando las pulsamos para ver lo que contienen, se expande un panel por cada sección que abrimos, y en ellos podemos observar que se incluyen todos los Procesos y los SubProcesos que pueden ser incluidos en el pseudocódigo que estamos escribiendo.

pseudocodigo-con-pseint- (29)

En dichos paneles, los Procesos se visualizan mediante el icono “Pro”, al cual le sigue el nombre del Proceso. En cambio, los SubProcesos se visualizan con el icono Sub. Si pulsamos sobre el ícono Sub, PSeInt nos indicará resaltando en color azul en que parte del seudocódigo se encuentra ubicado el SubProceso. Esto es una opción realmente muy útil cuando en el mismo pseudocódigo tenemos más de un Subproceso, variable o parámetro, ya que se vuelve dificultoso poder encontrarlos rápidamente, más aun si el programa es muy grande.

Programas ejemplos

A partir de este punto podremos encontrar algunos ejemplos de programas en pseudocódigo perfectamente compatibles con PSeInt, con los cuales podremos practicar y poder así sacar el máximo provecho a esta fantástica herramienta de pseudocódigo. Cabe destacar que para ejecutarlos es mejor ajustar el perfil de lenguaje “Flexible”.

PROGRAMA SUMA

Proceso Suma

// para cargar un dato, se le muestra un mensaje al usuario

// con la instrucción Escribir, y luego se lee el dato en

// una variable (A para el primero, B para el segundo) con

// la instrucción Leer

Escribir "Ingrese el primer número:";

Leer A;

Escribir "Ingrese el segundo numero:";

Leer B;

// ahora se calcula la suma y se guarda el resultado en la

// variable C mediante la asignación (<-)

C <- A+B;

// finalmente, se muestra el resultado, precedido de un

// mensaje para avisar al usuario, todo en una sola

// instrucción Escribir

Escribir "El resultado es: ",C;

FinProceso

pseudocodigo-con-pseint- (30)

PROGRAMA COLOQUIAL

// Este ejemplo muestra algunas de las variaciones posibles cuando se utiliza

// syntaxis flexible, instrucciones adicionales, y expresiones en lenguaje

// coloquial para las condiciones.

Proceso Coloquial

Definir a, b Como Entero

Imprimir "Ingrese 3 numeros (los dos primeros deben ser enteros):"

Leer a b c

Si a Es Mayor Que b Y a Es Mayor Que c Entonces

Escribir a " es el mayor"

sino

Si b Es Mayor Que c Entonces

Escribir b " es el mayor"

Sino

Escribir c " es el mayor"

FinSi

FinSi

Mostrar "Pulse una tecla para continuar"

Esperar Tecla

Limpiar Pantalla

Si a Es Par

Escribir a " es par"

Sino

Escribir a " es impar"

FinSi

Escribir Sin Bajar "Los divisores de " b " son: "

Para i Desde 1 Hasta b-1

Si b Es Multiplo De i

Escribir sin bajar i " "

Fin Si

Fin Para

Escribir b

Si c Es Entero

Mostrar C " es entero"

Sino

Mostrar C " es real"

FinSi

FinProceso

pseudocodigo-con-pseint- (31)

PROGRAMA ORDENAR LISTA

// Se ingresa una lista de nombres (la lista termina

// cuando se ingresa un nombre en blanco) no permitiendo

// ingresar repetidos y luego se ordena y muestra

Proceso OrdenaLista

Dimension lista[200]

Escribir "Ingrese los nombres (enter en blanco para terminar):"

// leer la lista

cant<-0

Leer nombre

Mientras nombre<>"" Hacer

cant<-cant+1

lista[cant]<-nombre

Repetir // leer un nombre y ver que no este ya en la lista

Leer nombre

se_repite<-Falso

Para i<-1 Hasta cant Hacer

Si nombre=lista[i] Entonces

se_repite<-Verdadero

FinSi

FinPara

Hasta Que NO se_repite

FinMientras

// ordenar

Para i<-1 Hasta cant-1 Hacer

// busca el menor entre i y cant

pos_menor<-i

Para j<-i+1 Hasta cant Hacer

Si lista[j]<lista[pos_menor] Entonces

pos_menor<-j

FinSi

FinPara

// intercambia el que estaba en i con el menor que encontro

aux<-lista[i]

lista[i]<-lista[pos_menor]

lista[pos_menor]<-aux

FinPara

// mostrar como queda la lista

Escribir "La lista ordenada es:"

Para i<-1 Hasta cant Hacer

Escribir " ",lista[i]

FinPara

FinProceso

pseudocodigo-con-pseint- (32)

PROGRAMA MISIL

Proceso Misil

Escribir "Presione una tecla para iniciar el lanzamiento!"

Esperar Tecla

// el arreglo cohete tiene el dibujo del cohete como lineas de texto

dimension cohete[9]

cohete[1]<-" /|\ "

cohete[2]<-" |B| "

cohete[3]<-" |O| "

cohete[4]<-" |M| "

cohete[5]<-" |B| "

cohete[6]<-" //|\\ "

cohete[7]<-" ******* "

cohete[8]<-"* * * * *"

cohete[9]<-" * * * * "

// primero se muestra la primer parte del dibujo y la cuenta regresiva

Para i<-1 hasta 11 Hacer

Borrar Pantalla

Para j<-1 hasta 15 Hacer

Escribir ""

FinPara

Para j<-1 hasta 6 Hacer

Escribir cohete[j]

FinPara

Escribir ""

Escribir "Lanzamiento en ",11-i

Esperar 1 Segundo

FinPara

// despues se muestra el dibujo completo y cada vez mas arriba

Para i<-1 hasta 15 Hacer

Borrar Pantalla

Para j<-i hasta 15 Hacer

Escribir ""

FinPara

Para j<-1 hasta 8 Hacer

Escribir cohete[j]

FinPara

si i>1 Entonces

Escribir " * * * * "

finsi

Esperar 1/i Segundo

FinPara

// finalmente se va modificando el dibujo para hacer la explosion

// estado tiene un entero que dice en que parte de la explosion va cada linea del dibujo

Dimension estado[6]

estado[1]<-3; estado[2]<-2; estado[3]<-1

estado[4]<-2; estado[5]<-3; estado[6]<-4

Para i<-1 hasta 10 Hacer

Borrar Pantalla

Para j<-1 hasta 6 Hacer

Estado[j]<-Estado[j]-1

segun Estado[j] Hacer

0: cohete[j]<-" + "

-1,-5: cohete[j]<-" +X+ "

-2,-4: cohete[j]<-" +XXX+ "

-3: cohete[j]<-" +XXXXX+ "

-6: cohete[j]<-" "

FinSegun

Escribir cohete[j]

FinPara

Esperar .2 Segundos

FinPara

FinProceso

pseudocodigo-con-pseint- (33)

PROGRAMA TATETI

Proceso TaTeTi

// incializa dos matrices de 3x3, una para guardar la ficha que se ve,

// y otra para un valor asociado a la ficha, para un jugador sera 1, para

// el otro 2, entoces para ver quien gano se multiplica por fila, por

// columna y por diagonal, si el resultado es 1 gano el primer jugador,

// si es 8 gano el segundo, si es 0 es porque faltaba completar, si

// es otra cosa, estan las tres fichas, pero no son del mismo jugador

Dimension Tab1[3,3]

Dimension Tab2[3,3]

Para i<-1 Hasta 3 Hacer

Para j<-1 Hasta 3 Hacer

Tab1[i,j]<-0

Tab2[i,j]<-" "

FinPara

FinPara

TurnoJugador1<-Verdadero

Terminado<-Falso

Ganador<-Falso

CantTurnos<-0

Mientras ~ Terminado hacer

// dibuja el tablero

Borrar Pantalla

Escribir " "

Escribir " || || "

Escribir " ",Tab2[1,1]," || ",Tab2[1,2]," || ",Tab2[1,3]

Escribir " 1|| 2|| 3"

Escribir " =====++=====++======"

Escribir " || || "

Escribir " ",Tab2[2,1]," || ",Tab2[2,2]," || ",Tab2[2,3]

Escribir " 4|| 5|| 6"

Escribir " =====++=====++======"

Escribir " || || "

Escribir " ",Tab2[3,1]," || ",Tab2[3,2]," || ",Tab2[3,3]

Escribir " 7|| 8|| 9"

Escribir " "

Si ~ Ganador y CantTurnos<9 Entonces

// carga auxiliares segun a qué jugador le toca

Si TurnoJugador1 Entonces

Ficha<-'O'; Valor<- 1; Objetivo<-1

Escribir "Turno del jugador 1 (X)"

Sino

Ficha<-'X'; Valor<- 2; Objetivo<-8

Escribir "Turno del jugador 2 (O)"

FinSi

// pide la posición para colocar la ficha y la valida

Escribir "Ingrese la Posición (1-9):"

Repetir

Leer Pos

Si Pos<1 o Pos>9 Entonces

Escribir "Posición incorrecta, ingrese nuevamente: "

Pos<-99;

Sino

i<-trunc((Pos-1)/3)+1

j<-((Pos-1) MOD 3)+1

Si Tab1[i,j]<>0 Entonces

pos<-99

Escribir "Posición incorrecta, ingrese nuevamente: "

FinSi

FinSi

Hasta Que Pos<>99

// guarda la ficha en la matriz tab2 y el valor en tab1

CantTurnos<-CantTurnos+1

Tab1[i,j]<-Valor

Tab2[i,j]<-Ficha

// verifica si ganó, buscando que el producto de las fichas en el tablero de Objetivo

aux_d1<-1; aux_d2<-1

Para i<-1 hasta 3 hacer

aux_i<-1; aux_j<-1

aux_d1<-aux_d1*Tab1[i,i]

aux_d2<-aux_d2*Tab1[i,4-i]

Para j<-1 hasta 3 hacer

aux_i<-aux_i*Tab1[i,j]

aux_j<-aux_j*Tab1[j,i]

FinPara

Si aux_i=Objetivo o aux_j=Objetivo Entonces

Ganador<-Verdadero

FinSi

FinPara

Si aux_d1=Objetivo o aux_d2=Objetivo Entonces

Ganador<-Verdadero

Sino

TurnoJugador1 <- ~ TurnoJugador1

FinSi

Sino

Si Ganador Entonces

Escribir "Ganador: "

Si TurnoJugador1 Entonces

Escribir "Jugador 1!"

Sino

Escribir "Jugador 2!"

FinSi

Sino

Escribir "Empate!"

FinSi

Terminado<-Verdadero

FinSi

FinMientras

FinProceso

pseudocodigo-con-pseint- (34)

Si este tema te interesa, no dudes en visitar nuestro sitio para encontrar más contenido como este.

Graciela Marker

Periodista independiente con más de 20 años de experiencia en medios gráficos, audiovisuales y digitales. Formada académicamente en periodismo digital y comunicación multimedia, ámbito en el que se desenvuelve hace dos décadas. Especializada en ámbitos tales como la informática y la logística empresarial, entre otros.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Subir

Usamos cookies para darte una mejor experiencia de navegación. Si continuas navegando, aceptas su uso. Más Información sobre nuestras Cookies