Taller de Resolución de Problemas Computacionales · Taller de Resolución de Problemas...

Post on 13-Jun-2018

236 views 1 download

Transcript of Taller de Resolución de Problemas Computacionales · Taller de Resolución de Problemas...

Taller de Resolución de Problemas Computacionales

Clase1: 27/9

• Presentación:

• Equipo de Trabajo

• Encuentros

• Certificación del Taller:

• Por Asistencia

• Por Aprobación

• Sitio Web.

• Etapas en la Resolución de Problemas Computacionales.

• Software PSeInt:

• Estructuras Secuenciales

Taller de Resolución de Problemas Computacionales

NAVEGAR POR EL SITIO: pseintoran.wordpress.com

Taller de Resolución de Problemas Computacionales

Página: Trabajos Prácticos

Taller de Resolución de Problemas Computacionales

Página: Novedades Comisión #

Taller de Resolución de Problemas Computacionales

Comenzando … que entendemos por problema?

“Proposición por la cual se trata de averiguar el modo de obtener un resultado o solución conociendo ciertos datos”

Palabras claves: Solución, Modo, Conociendo datos

En Computación:

Conociendo datos = Entrada del problema

Modo = Método ó algoritmo

Resultado = Solución del problema

Taller de Resolución de Problemas Computacionales

Entonces dado un problema:

Identificar la entrada los datos:

Especificar el algoritmo que relacione los datos de la entrada con la solución al problema

Identificar la salida o solución

Datos Solución Algoritmo

Secuencia lógica de pasos bien definidos que conducen a la solución de un problema.

Taller de Resolución de Problemas Computacionales

Ejemplo:

Problema: Dada la base y altura de un triángulo, calcular el área.

Identificar la entrada los datos: base y altura

Especificar el algoritmo: el área es igual a (base x altura)/2

Identificar la salida: mostrar el área

Si base = 5 y altura = 10: Identificar la entrada los datos: 5 y 10

Especificar el algoritmo: el área es igual a (5 x 10)/2 = 25

Identificar la salida: mostrar el área, o se 25

Taller de Resolución de Problemas Computacionales

Herramientas para especificar los algoritmos:

Diagramas de Flujo

Diagramas de Bloque

Pseudocódigo en español

Lenguajes de Programación

PSeInt: una herramienta didáctica que combina los diagramas de flujo y el pseudocódigo en español para especifica los algoritmos

Taller de Resolución de Problemas Computacionales PSeInt:

Estructuras Secuenciales

Leer base

Escribir “Este es un cartel”

area <- base * altura

Pseudocódigo en Español

Diagrama de Flujo

1. Entrada de Datos

2. Salida de Datos

3. Asignación

Taller de Resolución de Problemas Computacionales PSeInt:

Manos a la obra …

1. Clic en acceso directo PSeInt

ó

2. En Carpeta Programas, clic en PSEINT PORTABLE

Taller de Resolución de Problemas Computacionales PSeInt:

Manos a la obra …

PSeInt: resolver el problema del área de un triángulo.

Area de Pseudocódigo

Diagramas de Flujo

Problema: Dada la base y altura de un triángulo, calcular el área.

Taller de Resolución de Problemas Computacionales PSeInt:

Manos a la obra…

Diagrama de Flujo:

Proceso Problema

Escribir 'Ingresar base:'

Leer base

Escribir 'Ingresar altura:'

Leer altura

area<- (base*altura)/2

Escribir 'El area es:',area

FinProceso

Pseudocódigo :

Taller de Resolución de Problemas Computacionales PSeInt:

Manos a la obra… resolviendo Trabajo Práctico N° 1

Taller de Resolución de Problemas Computacionales

Clase 2: 4/10

• Revisar Tarea.

• Algunos ejercicios desde Ejercicio 6 a 11

(el Ejercicio 7 lo veremos en esta clase)

• Software PSeInt:

Estructuras Secuenciales

• Estructuras de Decisión

Taller de Resolución de Problemas Computacionales PSeInt:

Manos a la obra… resolviendo la Tarea …

Taller de Resolución de Problemas Computacionales PSeInt:

Manos a la obra… resolviendo la Tarea …

Tarea:

Se ingresa una cantidad n de segundos. Calcular y mostrar la cantidad de horas, minutos y segundos que hay en n segundos

Entradas: cantidad n de segundos.

Salidas: la cantidad de horas, minutos y segundos.

Algoritmo:

Equivalencias que debemos recordar:

- 1 minuto tiene 60 segundos.

- 1 hora tiene 60 minutos.

Taller de Resolución de Problemas Computacionales PSeInt:

Manos a la obra… resolviendo la Tarea …

Si n = 1,2,3 .. 59 Mostrar n

Si n = 60, 61 … 119 n |60

r 1 1 minuto

r segundos

Si n = 120 … 179 n |60

r 2 2 minutos

r segundos

Si n = 5936 5936 |60

56 98 98 minutos

56 segundos

> 1 hora 98 |60

38 1 1 Hora

38 minutos Algoritmo: n |60

r hm hm minutos

r segundos

hm |60 m h h horas

m minutos

Taller de Resolución de Problemas Computacionales PSeInt:

Manos a la obra… resolviendo la Tarea …

Taller de Resolución de Problemas Computacionales PSeInt: Trabajo Práctico N° 1

Algunos Ejercicios 6 al 11: Ustedes

Taller de Resolución de Problemas Computacionales PSeInt:

Veremos otras estructuras que nos permitirán

realizar algoritmos más complejos …

4. Si (x>0) Entonces

Escribir “x>0”

FinSi

5. Si (x>0) Entonces

Escribir “x>0”

Sino

Escribir “x <= 0”

FinSi

Pseudocódigo en Español

Diagrama de Flujo

Taller de Resolución de Problemas Computacionales PSeInt:

Estructuras de Decisión

Segun i Hacer

1: Escribir "i=1"

2: Escribir "i=2"

3:Escribir "i=3"

De Otro Modo: Escribir "i>3"

Fin Segun

Pseudocódigo en Español

Diagrama de Flujo

Taller de Resolución de Problemas Computacionales PSeInt:

Estructura de Decisión Múltiple

Taller de Resolución de Problemas Computacionales PSeInt:

Manos a la obra… Trabajo Práctico N°1 ejercicio 12) en adelante

1. Entender el problema: Entradas: ….

Salidas: ….

Algoritmo: …..

2. Diagramar el Algoritmo

3. Programar el Algoritmo: 4. Verificar la solución:

Taller de Resolución de Problemas Computacionales

Clase 3: 11/10

• Revisar Tarea (TP1 desde Ejercicio 15 a 19)

• Software PSeInt:

Estructuras Secuenciales

Estructuras de Decisión (Si, Según)

• Estructura Repetitiva: Para ... Fin Para

• TP 2 Ejercicios 1 al 5

Supongamos el sig. Ejercicio:

Ingresar 5 números naturales y mostrar su suma.

Taller de Resolución de Problemas Computacionales PSeInt:

Estructuras Repetitivas

Proceso ejercicio

suma <- 0

Escribir 'Ingrese numero (1)'

Leer num1

Escribir 'Ingrese numero (2)'

Leer num2

Escribir 'Ingrese numero (3)'

Leer num3

Escribir 'Ingrese numero (4)'

Leer num4

Escribir 'Ingrese numero (5)'

Leer num5

suma <- (num1+num2+num3+num4+num5)

Escribir ‘Suma:',suma

FinProceso

Y si fueran 10 números?

Y si fueran 100 números?

Necesitamos

Estructuras Repetitivas

Taller de Resolución de Problemas Computacionales PSeInt:

Estructuras Repetitivas

Permiten la ejecución repetida de un conjunto de acciones.

Cuál es el conjunto de acciones que se repiten ?

Cuántas veces ?

5

Pseudocódigo en Español: Sintáxis

Para variable_numerica <- valor_inicial Hasta valor_final Con Paso paso Hacer

Escribir “Ingrese numero :”

Leer num

suma <- suma + num

Fin Para

Taller de Resolución de Problemas Computacionales PSeInt:

Estructuras Repetitivas

Diagrama:

Taller de Resolución de Problemas Computacionales PSeInt:

Estructuras Repetitivas

Para … Fin Para :Permite la ejecución repetida de un conjunto de acciones, un numero fijo de veces.

Valor inicial, 1

Valor final,

5 (veces)

Incremento

o paso, 1

Variable numérica, i

Taller de Resolución de Problemas Computacionales PSeInt:

Estructuras Repetitivas

En el ejemplo, utilicemos la estructura Para … Fin Para

Conjunto de acciones que se repiten:

Taller de Resolución de Problemas Computacionales PSeInt:

Estructuras Repetitivas

Para… Fin Para:

El pseudocódigo:

Proceso Ejercicio

suma <- 0

Para I <- 1 Hasta 5 Con Paso 1 Hacer

Escribir “Ingrese numero :”

Leer num

suma <- suma + num

Fin Para

Escribir “La suma es:”, suma

Fin Proceso

Para i <- 1 Hasta 10 Con Paso 1 Hacer

Escribir “Hola"

Fin Para

Dado el Pseudocódigo en Español

Diagrama de Flujo

Taller de Resolución de Problemas Computacionales PSeInt:

Estructuras Repetitivas

Qué se escribirá en la pantalla?

Continuamos con el TP2: Ejer1 al 5

Taller de Resolución de Problemas Computacionales

Clase 4: 18/10

• Revisar Tarea (TP2 desde Ejercicio 6 al ..)

• Software PSeInt:

Estructuras Secuenciales

Estructuras de Decisión (Si, Según)

Estructura Repetitiva: Para ... Fin Para

• TP 2 Ejercicios 6 al 10

Taller de Resolución de Problemas Computacionales

Clase 5: 25/10

• Revisar Tarea

• Software PSeInt:

Estructuras Secuenciales

Estructuras de Decisión (Si, Según)

Estructura Repetitiva: “Para ... Fin Para”

• TP 2 Ejercicios 12 al 14 (Retomar algoritmo Primo)

• Estructura Repetitiva: “Mientras … Fin Mientras”

• Trabajo Práctico N° 3

Supongamos el sig. Ejercicio:

Dada una lista de números, sumarlos mientras dicha suma sea menor que 75.

Taller de Resolución de Problemas Computacionales PSeInt:

Estructuras Repetitivas …

a) Cuántos números se deberán ingresar ?

Necesitamos

Estructura Repetitiva

Condicionada

b) Cuántas veces se realizará la suma de los números?

c) Hay alguna condición que controla las veces que se suman los números?

d) Hay alguna condición que hace que no se sumen más los números?

Taller de Resolución de Problemas Computacionales PSeInt:

Estructura Repetitiva Condicionada

En el ejemplo, utilicemos la estructura Mientras … Fin Mientras

Conjunto de acciones que se repiten:

Taller de Resolución de Problemas Computacionales PSeInt:

Estructura Repetitiva Condicionada

En el ejemplo, utilicemos la estructura Mientras … Fin Mientras

Proceso Ejercicio

suma <- 0

Mientras Suma < 75 Hacer

Escribir "Ingresa un numero:"

Leer x

suma <- suma + x

Fin Mientras

Escribir suma

FinProceso

Conjunto de acciones que se repiten,

mientras la condición: “Suma < 75”:

Pseudocódigo en Español: Sintáxis

Mientras condicion_lógica Hacer

Acciones que se repiten si condición_lógica es Verdadera

Acción que hace que se modifica el valor verdad de condición_lógica

Fin Mientras

Taller de Resolución de Problemas Computacionales PSeInt:

Estructura Repetitiva: Mientras

Diagrama:

Taller de Resolución de Problemas Computacionales PSeInt:

Estructura Repetitiva Condicionada ó Ciclo Mientras

Reglas de funcionamiento: 1) La condición se evalúa antes de entrar al ciclo.

• Si la condición es verdadera, se ejecuta el ciclo, y • Si es falsa, el control pasa a la acción siguiente del ciclo.

2) Si la condición es falsa cuando se ejecuta el ciclo por primera vez: • las acciones dentro del ciclo no se ejecutarán nunca

3) Mientras la condición sea verdadera:

• las acciones dentro del ciclo se ejecutarán. 4) Dentro del ciclo, debe modificarse algo que altere la condición haciendo que su valor cambie a Falso. 5) Si la condición nunca cambia a Falso entonces:

• el ciclo no termina nunca y se define como un ciclo infinito.

Taller de Resolución de Problemas Computacionales

Continuamos con la resolución del Trabajo Práctico N° 3

Taller de Resolución de Problemas Computacionales

Clase 6: 1/11/13

• Revisar Tarea.

• Software PSeInt:

Estructuras Secuenciales

Estructuras de Decisión

Estructura Repetitiva: Para ... Fin Para

Estructura Repetitiva: Mientras … Fin Mientras

• Trabajo Práctico N° 3

Taller de Resolución de Problemas Computacionales

Clase 7: 8/11

• Revisar Tarea.

• Software PSeInt:

Estructuras Secuenciales

Estructuras de Decisión

Estructura Repetitiva: Para ... Fin Para

Estructura Repetitiva: Mientras … Fin Mientras

• Trabajo Práctico N° 3

Taller de Resolución de Problemas Computacionales

Clase 8: 15/11 :Repaso y consulta

Ejercicios propuestos de repaso:

1) Dados N números naturales, contar cuántos de ellos cumplen la condición de ser “crecientes”.

Ejemplos de nros. crecientes: 1234 122 13579 55555

Ejemplos de nros NO crecientes: 1243 221 13957

2) Dados N nros. naturales, contar cuántos de ellos cumplen la condición de ser “poderosos”. Un nro. K es “poderoso” si ocurre que todos los divisores primos de K, llamemosle p, p2 también es divisor de K.

Ejemplo: K=36, divisor primo p=2; p2 = 4 divide a 36 también

divisor primo p=3; p2 = 9 divide a 36 también

no hay otros divisores de 36 que sean primos, luego 36 es poderoso.

Taller de Resolución de Problemas Computacionales

Clase 9: Evaluación 22/11

• Utilizando el Software PSeInt y algunas de las

Estructuras Secuenciales

Estructuras de Decisión

Estructura Repetitiva: Para ... Fin Para

Estructura Repetitiva: Mientras … Fin Mientras

Obtener el diagrama de flujo y el programa en pseudocódigo para:

Problema:

Escribir un programa que determine todos los números comprendidos entre 1 y N tal que multiplicados por su úlitmo dígito, de un número compuesto únicamente por unos.

Por ejemplo 12345679 * 9 = 111111111

Taller de Resolución de Problemas Computacionales

Solución:

Taller de Resolución de Problemas Computacionales

Solución: