Intro P Se Int

Preview:

DESCRIPTION

 

Citation preview

Introducción a la Programación con

Software Libre

Stephenson Prieto

con Software Libre

Introducción a la

Programación

Stephenson Prieto

Introducción a la Programación con

Software Libre

Stephenson Prieto

¿Cual es el mejor lenguaje para aprender los fundamentos de la

Programación?

Introducción a la Programación con

Software Libre

Stephenson Prieto

CC++

Java

Bas i c

Python

PascalAda

Introducción a la Programación con

Software Libre

Stephenson Prieto

Principales Problemas

●Los lenguajes de Programación están inspirados en el idioma ingles.

●Los estudiantes pasan mas tiempo corrigiendo problemas de sintaxis propia del lenguaje que desarrollando la lógica.

La Solución:

El pseudocódigo

Introducción a la Programación con

Software Libre

Stephenson Prieto

El pseudocódigoEl pseudocódigo es un lenguaje que permite expresar algoritmos sin llegar a la rigidez de la sintaxis de los lenguajes de programación tradicionales ni a la fluidez del lenguaje coloquial.

Esto permite codificar un programa con mayor agilidad que en cualquier lenguaje de programación, con la misma validez semántica, normalmente se utiliza en las fases de análisis o diseño de Software, o en el estudio de un algoritmo.

El pseudocódigo describe un algoritmo utilizando una mezcla de frases en lenguaje común, instrucciones de

programación y palabras clave que definen las estructuras básicas. Su objetivo es permitir que el programador se centre en los aspectos lógicos de la solución a un problema.

pero...

Introducción a la Programación con

Software Libre

Stephenson Prieto

Desventajas del pseudocódigo

●Las principales herramientas para plasmar un pseudocódigo son las tradicionales: lápiz y papel.

●No hay forma cierta de saber si un pseudocódigo funciona: El papel aguanta todo.

●Los pseudocódigos son fáciles de entender sólo después de haber visto un lenguaje de programación en funcionamiento, no antes.

¿Leer A? pero si lo que quiero

es un número¿correrlo?

¿que querran decir con correrlo?

¿Imprimir Variables? ¿Para?

¿Mientras?

Introducción a la Programación con

Software Libre

Stephenson Prieto

Que fácil sería todo si existiera una forma de escribir los pseudocódigos

en la computadora y estos funcionaran como los lenguajes de

programación

Introducción a la Programación con

Software Libre

Stephenson Prieto

Pues, esta herramienta existe:

Un pseudo-Interprete

y lo mejor de todo, el Libre

Introducción a la Programación con

Software Libre

Stephenson Prieto

Introducción a la Programación con

Software Libre

Stephenson Prieto

El Seudo-Interprete PseIntPSeInt es una herramienta para aprender la lógica de programación, orientada a estudiantes sin experiencia en dicha área. Mediante la utilización de un simple y limitado pseudo-lenguaje intuitivo y en español, permite comenzar a comprender conceptos básicos y fundamentales de un algoritmo computacional.

Origen del Proyecto

PSeInt es un software creado por Pablo Novara iniciado como proyecto final de la cátedra de Programación de la carrera Ingeniería en Informática en la Universidad del Litoral en Argentina.Está codificado en C++ y liberado como software libre bajo la licencia GPL.El sitio del Proyecto es http://pseint.sourceforge.net/

Introducción a la Programación con

Software Libre

Stephenson Prieto

¿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, entre otros, 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 pseudo-lenguaje 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.

Introducción a la Programación con

Software Libre

Stephenson Prieto

El pseudocódigo de PSeIntLas características del este pseudolenguaje sigue las premisas:

•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 S inT i tu lo          acc ion 1 ; acc ion 1 ;             .             .          acc ion n ;    F inP roceso

Comienza con la palabra clave Proceso seguida del nombre del programa, luego le sigue una secuencia de instrucciones y finaliza con la palabra FinProceso.

Introducción a la Programación con

Software Libre

Stephenson Prieto

Barra de Menú

Barra de Herramientas

Barra de Comandos

Editor

Introducción a la Programación con

Software Libre

Stephenson Prieto

La Barra de Comandos

Entre las Acciones tenemos:

Acciones Secuenciales:

•Escritura.

•Lectura.

•Asignación

Estructuras de Control Condicionales

•Si-entones

•Según

Estructuras de Control Repetitivas

•Mientras

•Repetir

•Para

Introducción a la Programación con

Software Libre

Stephenson Prieto

Acciones Secuenciales

Entradas

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

Leer <variable1> , <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.

Introducción a la Programación con

Software Libre

Stephenson Prieto

Acciones Secuenciales

Salidas

La instrucción Escribir permite mostrar valores al ambiente.

      Escribir <expr1> , <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.

Introducción a la Programación con

Software Libre

Stephenson Prieto

Acciones Secuenciales

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

<variable> <- <expresion> ; 

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.

Introducción a la Programación con

Software Libre

Stephenson Prieto

Ejemplo

Introducción a la Programación con

Software Libre

Stephenson Prieto

Estructura de Control Condicionales

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

                 <instrucciones>             Sino                  <instrucciones>

     FinSiAl 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áusula 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.

Introducción a la Programación con

Software Libre

Stephenson Prieto

Ejemplo

Introducción a la Programación con

Software Libre

Stephenson Prieto

Estructura de Control Condicionales

Segun La secuencia de instrucciones ejecutada por una instrucción Segun depende del valor de una variable numérica. Segun <variable> Hacer

          <numero1>: <instrucciones>            <numero2>,<numero3>: <instrucciones>

           <...>             De Otro Modo: <instrucciones>       FinSegun

Esta instrucción permite ejecutar opcionalmente varias acciones posibles, dependiendo del valor 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.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.

Introducción a la Programación con

Software Libre

Stephenson Prieto

Ejemplo

Introducción a la Programación con

Software Libre

Stephenson Prieto

Estructura de Control Repetitivas

Mientras La instrucción Mientras ejecuta una secuencia de instrucciones mientras una condición sea verdadera.

Mientras <condicion> Hacer             <instrucciones>       FinMientras

Al ejecutarse esta instrucción, la condición es evaluada. Si la condición resulta verdadera, 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 verdadera.Note que las instrucciones del cuerpo del ciclo pueden no ejecutarse nunca, si al evaluar por primera vez la condición resulta ser falsa. 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.

Introducción a la Programación con

Software Libre

Stephenson Prieto

Ejemplo

Introducción a la Programación con

Software Libre

Stephenson Prieto

Estructura de Control Repetitivas

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

         <instrucciones>       Hasta Que <condicion>

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. Si la condición es falsa, 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.

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. demá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.

Introducción a la Programación con

Software Libre

Stephenson Prieto

Ejemplo

Introducción a la Programación con

Software Libre

Stephenson Prieto

Estructura de Control Repetitivas

Para La instrucción Para ejecuta una secuencia de instrucciones un número 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 evalúa 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 cláusula Con Paso <paso>, la variable <variable> se incrementará en 1.

Introducción a la Programación con

Software Libre

Stephenson Prieto

Ejemplo

Introducción a la Programación con

Software Libre

Stephenson Prieto

Estudio de Casos

Introducción a la Programación con

Software Libre

Stephenson Prieto

Estudio de Casos

A continuación estudiaremos un caso con fines educativos donde pondremos en práctica la herramienta de Interprete de Pseudocódigos (PSeInt) en la propuesta de un solución automatizada.

Introducción a la Programación con

Software Libre

Stephenson Prieto

La Misión Mercal está de aniversario, por lo tanto tiene una promoción.

Colocará unos toldos en las calles y venderá un producto con un 20% de descuento.

Este beneficio de descuento sólo debe alcanzar a las personas que tengan ingresos inferiores a los 850Bs. El resto de las personas adquirirán los productos al precio normal.

Promoción MERCAL

Realice un pseudocódigo con su respectivo diagrama de flujo para la implementación de esta promoción. Pruebe la solución propuesta con opciones que reflejen los casos con descuento y sin descuento.

Introducción a la Programación con

Software Libre

Stephenson Prieto

Promoción MERCAL

La Misión Mercal está de aniversario, por lo tanto tiene una promoción.Colocará unos toldos en las calles y venderá un producto con un 20% de descuento.Este beneficio de descuento sólo debe alcanzar a las personas que tengan ingresos inferiores a los 850Bs. El resto de las personas adquirirán los productos al precio normal.

Realice un pseudocódigo con su respectivo diagrama de flujo para la implementación de esta promoción. Pruebe la solución propuesta con opciones que reflejen los casos con descuento y sin descuento.

¿Qué nos piden?

1- Realizar el pseudocódigo.

2- Realizar el diagrama de Flujo.

3- Probar la solución con diferentes datos.

Introducción a la Programación con

Software Libre

Stephenson Prieto

De la manera tradicional haríamos lo siguiente

Paso 3Probar la solución con diferentes datos

Paso 1Realizar el pseudocódigo

Paso 2Realizar el Diagrama de Flujo

Introducción a la Programación con

Software Libre

Stephenson Prieto

Ahora lo haremos usando

el Software pseudo-Interprete Libre.

Introducción a la Programación con

Software Libre

Stephenson Prieto

Promoción MERCAL

La Misión Mercal está de aniversario, por lo tanto tiene una promoción.Colocará unos toldos en las calles y venderá un producto con un 20% de descuento.Este beneficio de descuento sólo debe alcanzar a las personas que tengan ingresos inferiores a los 850Bs. El resto de las personas adquirirán los productos al precio normal.

Realice un pseudocódigo con su respectivo diagrama de flujo para la implementación de esta promoción. Pruebe la solución propuesta con opciones que reflejen los casos con descuento y sin descuento.

Paso 1 Realizar el pseudocódigo.

Presenta ayudas para la escritura como Autocompletado, Ayudas Emergentes, Plantillas de Comandos, Coloreado de Sintaxis e Indentado Inteligente.

Introducción a la Programación con

Software Libre

Stephenson Prieto

Promoción MERCAL

La Misión Mercal está de aniversario, por lo tanto tiene una promoción.Colocará unos toldos en las calles y venderá un producto con un 20% de descuento.Este beneficio de descuento sólo debe alcanzar a las personas que tengan ingresos inferiores a los 850Bs. El resto de las personas adquirirán los productos al precio normal.

Realice un pseudocódigo con su respectivo diagrama de flujo para la implementación de esta promoción. Pruebe la solución propuesta con opciones que reflejen los casos con descuento y sin descuento.

Paso 2 Realizar el Diagrama de Flujo

Clic en el icono

o pulsar F7

Introducción a la Programación con

Software Libre

Stephenson Prieto

Promoción MERCAL

La Misión Mercal está de aniversario, por lo tanto tiene una promoción.Colocará unos toldos en las calles y venderá un producto con un 20% de descuento.Este beneficio de descuento sólo debe alcanzar a las personas que tengan ingresos inferiores a los 850Bs. El resto de las personas adquirirán los productos al precio normal.

Realice un pseudocódigo con su respectivo diagrama de flujo para la implementación de esta promoción. Pruebe la solución propuesta con opciones que reflejen los casos con descuento y sin descuento.

Paso 2 Realizar el Diagrama de Flujo

Introducción a la Programación con

Software Libre

Stephenson Prieto

Promoción MERCAL

La Misión Mercal está de aniversario, por lo tanto tiene una promoción.Colocará unos toldos en las calles y venderá un producto con un 20% de descuento.Este beneficio de descuento sólo debe alcanzar a las personas que tengan ingresos inferiores a los 850Bs. El resto de las personas adquirirán los productos al precio normal.

Realice un pseudocódigo con su respectivo diagrama de flujo para la implementación de esta promoción. Pruebe la solución propuesta con opciones que reflejen los casos con descuento y sin descuento.

Paso 3 Probar la solución con diferentes datos

Clic en el icono

o pulsar F5

Introducción a la Programación con

Software Libre

Stephenson Prieto

Promoción MERCAL

La Misión Mercal está de aniversario, por lo tanto tiene una promoción.Colocará unos toldos en las calles y venderá un producto con un 20% de descuento.Este beneficio de descuento sólo debe alcanzar a las personas que tengan ingresos inferiores a los 850Bs. El resto de las personas adquirirán los productos al precio normal.

Realice un pseudocódigo con su respectivo diagrama de flujo para la implementación de esta promoción. Pruebe la solución propuesta con opciones que reflejen los casos con descuento y sin descuento.

Paso 3 Probar la solución con diferentes datos

Prueba #01

Introducción a la Programación con

Software Libre

Stephenson Prieto

Promoción MERCAL

La Misión Mercal está de aniversario, por lo tanto tiene una promoción.Colocará unos toldos en las calles y venderá un producto con un 20% de descuento.Este beneficio de descuento sólo debe alcanzar a las personas que tengan ingresos inferiores a los 850Bs. El resto de las personas adquirirán los productos al precio normal.

Realice un pseudocódigo con su respectivo diagrama de flujo para la implementación de esta promoción. Pruebe la solución propuesta con opciones que reflejen los casos con descuento y sin descuento.

Paso 3 Probar la solución con diferentes datos

Prueba #02

Introducción a la Programación con

Software Libre

Stephenson Prieto

Ya se lo que están pensando:

Introducción a la Programación con

Software Libre

Stephenson Prieto

Aún no estas satisfecho

¿quieres mas?

Introducción a la Programación con

Software Libre

Stephenson Prieto

Promoción MERCAL

La Misión Mercal está de aniversario, por lo tanto tiene una promoción.Colocará unos toldos en las calles y venderá un producto con un 20% de descuento.Este beneficio de descuento sólo debe alcanzar a las personas que tengan ingresos inferiores a los 850Bs. El resto de las personas adquirirán los productos al precio normal.

Realice un pseudocódigo con su respectivo diagrama de flujo para la implementación de esta promoción. Pruebe la solución propuesta con opciones que reflejen los casos con descuento y sin descuento.

Paso 4 Llevarlo a un Lenguaje de Programación

PSeInt te permite exportar tu pseudocódigo al Lenguaje de Programación C++

Introducción a la Programación con

Software Libre

Stephenson Prieto

Promoción MERCAL

La Misión Mercal está de aniversario, por lo tanto tiene una promoción.Colocará unos toldos en las calles y venderá un producto con un 20% de descuento.Este beneficio de descuento sólo debe alcanzar a las personas que tengan ingresos inferiores a los 850Bs. El resto de las personas adquirirán los productos al precio normal.

Realice un pseudocódigo con su respectivo diagrama de flujo para la implementación de esta promoción. Pruebe la solución propuesta con opciones que reflejen los casos con descuento y sin descuento.

Paso 4 Llevarlo a un Lenguaje de Programación

Introducción a la Programación con

Software Libre

Stephenson Prieto

Resumen de características y funcionalidades

•Presenta herramientas de edición básicas para escribir algoritmos en pseudocódigo 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. •Permite ejecutar el algoritmo paso a paso controlando la velocidad e inspeccionando expresiones.•Puede confeccionar automáticamente la tabla de prueba de escritorio. •Determina y marca los errores de sintaxis y en tiempo de ejecución. •Genera diagramas de flujo a partir del algoritmo escrito. •Convierte el algoritmo de pseudocódigo a código C++. •Sistema de ayuda integrado acerca del pseudocódigo y el uso del programa.•Incluye un conjunto de ejemplos de diferentes niveles de dificultad. •Es multiplataforma (probado en GNU/Linux y Microsoft Windows). •Es totalmente libre y gratuito (licencia GPL).

Introducción a la Programación con

Software Libre

Stephenson Prieto

PSeInt se distribuye como Software Libre.

Lo puedes descargar, usar, copiar, compartir, estudiar…, todo libremente.

Donde conseguir PSeInt:

El sitio web del proyecto está en la dirección electrónica http://pseint.sourceforge.net/

Introducción a la Programación con

Software Libre

Stephenson Prieto

Un mundo nuevo te está esperando

Descubre el mundo de la Programación

Introducción a la Programación con

Software Libre

Stephenson Prieto

http://teletriunfador.wordpress.com

Introducción a la Programación con

Software Libre

Stephenson Prieto

Recommended