Lógica de programación

Page 1

LÓGICA DE PROGRAMACIÓN

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


¿QUÉ ES LA PROGRAMACIÓN?

• Proceso creativo PROBLEMA

DISEÑO

CODIFICACIÓN

DEPURACIÓN ¿FUNCIONA?

NO

SI MANTENIMIENTO © Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


¿POR QUÉ APRENDER A PROGRAMAR? • Revolución tecnológica • Pensamiento computacional – – – –

Resolución de problemas Crear algoritmos Capacidad de síntesis Lógica de programación

“El pensamiento computacional es el proceso que permite formular problemas de forma que sus soluciones pueden ser representadas como consecuencias de instrucciones y algoritmos”

• Brecha de género • Procesos de investigación • Constancia: – Tolerancia al error – Frustración – Búsqueda de soluciones © Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


PSEUDOCÓDIGO DIAGRAMAS DE FLUJO

PSEUDOCÓDIGO: Esquema textual del programa DIAGRAMA DE FLUJO: Esquema visual del programa

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


ESTRUCTURA DE UN PROGRAMA PSEUDOCÓDIGO

DIAGRAMA DE FLUJO INICIO

Instrucción 1

INICIO Instrucción 1 Instrucción 2 …. FIN

Instrucción 2 …

FIN

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


TIPOS DE INSTRUCCIONES

- Instrucciones de entrada y salida - Acción - Instrucciones declarativas - Instrucciones repetitivas (bucles) - Instrucciones de asignación - Operaciones matemáticas - Operaciones lógicas - Instrucciones selectivas (condicionales) © Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


INSTRUCCIONES DE ENTRADA Y SALIDA

-Petición de información por teclado -Visualización de datos en pantalla PSEUDOCÓDIGO

Inicio

Inicio Visualiza “introduce un número” Lee dato por teclado Visualiza “tu número es el “ dato Fin

DIAGRAMA DE FLUJO

“introduce número”

Lee Dato

“Tu número es “ Dato

Fin © Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


ACCIÓN

-Instrucción que generan un efecto concreto -Propias de cada lenguaje -Ejemplos: Mover un objeto en la pantalla -> “mover 1 paso” Girar un objeto en la pantalla -> “girar 90 grados”

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


EJEMPLO

¿Cómo llevo al gato de la A a la B? -

Cada paso avanza un cuadro Avanza 1 paso Retrocede 1 paso Gira 90º derecha Gira 90º izquierda

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


EJEMPLO

¿Cómo llevo al gato de la A a la B? Pseudocódigo:

Diagrama de flujo

Inicio Avanza 1 paso Avanza 1 paso Avanza 1 paso Gira 90º a la izquierda Avanza 1 paso Avanza 1 paso Fin

Gira 90º izquierda

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


SUPUESTO Mapa de 100 x 100 cuadros A y B en la misma disposición ¿Escribimos una línea por paso? Inicio Avanza 1 paso Avanza 1 paso Avanza 1 paso … 100 veces Gira a la izquierda Avanza 1 paso Avanza 1 paso Avanza 1 paso … 100 veces fin

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


BUCLES Conjunto de instrucciones que se ejecutan varias veces - Un número de veces concreto Repite N veces ….

- En función de una condición Repite mientras <condición> …. Repite hasta <condición>….

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


EJEMPLO CON BUCLES

¿Cómo llevo al gato de la A a la B?

(cada paso avanza un cuadro)

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


EJEMPLO

¿Cómo llevo al gato de la A a la B?

(cada paso avanza un cuadro) Pseudocódigo: Inicio Repite 3 veces Avanza 1 paso Gira a la izquierda Repite 2 veces Avanza 1 paso Fin

Diagrama de flujo Inicio Avanza 1 paso

3 veces

Gira a la izda Avanza 1 paso

2 veces

Fin © Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


SUPUESTO

Inicio Repite 99 veces Avanza 1 paso Gira a la izquierda Repite 99 veces Avanza 1 paso fin

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


EJEMPLO ESCRIBE LOS NÚMEROS DEL 1 AL 10

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


EJEMPLO ESCRIBE LOS NÚMEROS DEL 1 AL 10 Inicio Escribe 1 Escribe 2 Escribe 3 Escribe 4 Escribe 5 Escribe 6 Escribe 7 Escribe 8 Escribe 9 Escribe 10 Fin ¿Y del 1 al 1000?

Algoritmo

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


INSTRUCCIONES DECLARATIVAS

Sirven para crear VARIABLES ¿Qué es una variable? “Zona de memoria donde guardamos un dato y a la que hacemos referencia a través de un nombre que le asignamos” Almacenan datos introducidos por teclado Ejemplos: -Incógnita en una ecuación -Funcionamiento de una agenda de teléfonos © Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


VARIABLES

ELENA PEDRO

625224455

Elena es el nombre de variable

647856958

625224455 es el contenido de variable VENTAJAS:

JUAN

621457458

- Operaciones matemáticas - Elaboración de condiciones - Generalización de mis programas

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


INSTRUCCIONES ASIGNACIÓN Y MATEMÁTICAS

NÚMERO = 1 NÚMERO = 150 + 20 NÚMERO = NÚMERO + 1 NÚMERO = NÚMERO + 10 NÚMERO = NÚMERO + INCREMENTO NÚMERO = DATO + INCREMENTO INCREMENTO = NUMERO - DATO

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


EJEMPLO ESCRIBE LOS NÚMEROS DEL 1 AL 10 CON VARIABLES Inicio Crea la variable NÚMERO Repite 10 veces Escribe NÚMERO NÚMERO = NÚMERO + 1 Fin

¿del 1 al 100? ¿del 1 al 1000?

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


VARIABLES ¿Qué es inicializar una variable? Asignar un valor determinado al inicio de nuestro programa

¿Para que? Saber el valor exacto al inicio de nuestro programa Evitar “datos basura” Parametrizar o generalizar el programa

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


EJEMPLO ESCRIBE LOS NÚMEROS DE 2 AL 102 Inicio Crea la variable NÚMERO NÚMERO = 2 Repite 100 veces Escribe NÚMERO NÚMERO = NÚMERO + 1 Fin

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


EJEMPLO ESCRIBE LOS 100 PRIMEROS NÚMEROS PARES Inicio Crea la variable NÚMERO NÚMERO = 0 Repite 100 veces Escribe NÚMERO NÚMERO = NÚMERO + 2 Fin

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


INSTRUCCIONES SELECTIVAS CONDICIONALES Crea bifurcaciones en el programa Si una condición es verdadera, realiza (ejecuta) un conjunto de instrucciones Si una condición es falsa realiza otro conjunto de instrucciones

Si <condición> Entonces instrucción 1 instrucción 2 instrucción 3 … Si no instrucción 9 instrucción 10 instrucción 11

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


INSTRUCCIONES SELECTIVAS CONDICIONALES Tipos de condiciones: Número = 100 Númro = días Número > años Número < semana fecha = hoy alumno = “Juan”

Unión de condiciones: Día > 20 Temperatura < 5

y o no

Estación = “primavera” Estación = “invierno” Estación = “verano”

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


EJEMPLO

PEDIR DOS DATOS AL USUARIO POR TECLADO. EL PROGRAMA DIRÁ CUÁL ES MAYOR Inicio Introduce dato1 Introduce dato2 Si dato1 > dato2 entonces Escribe “dato1 es mayor que dato2” si no Escribe “dato 1 en menor o igual que dato2” Fin

Podemos mejorar el programa detectando cuando dato1 y dato2 son iguales

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


BUCLES CONDICIONALES

Ejecutamos un conjunto de instrucciones - Mientras una condición sea cierta mientras <condición> instrucciones - Hasta que una condición sea cierta repite instrucciones hasta <condición>

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


EJEMPLO

PIDE DOS NÚMEROS POR TECLADO Y ESCRIBE TODA LA SERIE

Inicio Introduce dato1 Introduce dato2 Mientras (dato1<dato2) Escribe dato1 dato1 = dato1 + 1 fin

¿SABEMOS CUÁL DE LOS DOS NÚMEROS ES EL QUE INICIA LA SERIE? ¿QUÉ OCURRE SI DATO1 FUESE MAYOR QUE DATO2?

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


EJEMPLO

PIDE DOS NÚMEROS POR TECLADO Y ESCRIBE TODA LA SERIE Inicio Introduce dato1 Introduce dato2 Si dato1<dato2 entonces Mientras (dato1<dato2) Escribe dato1 dato1 = dato1 + 1 si no Mientras (dato2<dato1) Escribe dato2 dato2 = dato2 + 1 fin

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


CREATIVIDAD EN PROGRAMACIÓN

NO EXISTE LA SOLUCIÓN ÚNICA A NINGÚN PROBLEMA

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


CUIDADO CON LOS LÍMITES OPERADORES LÓGICOS

Atención a: Cuál es el valor de inicio de las variables Cuándo evaluamos la condición Cuándo modificamos las variables que evaluamos en la condición Nunca puede faltar una instrucción que modifique la variable relacionada con la condición de evaluación

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


CUIDADO CON LOS LÍMITES OPERADORES LÓGICOS 1 - 99 Inicio

2 - 100 Inicio

número = 1 mientras (número<100) escribe número numero=numero+1 fin

número = 1 mientras (número<100) número=número+1 escribe número fin

Bucle infinito Inicio

1 - 100 Inicio

número = 0 mientras (número<100) escribe número

número = 0 mientras (número<100) número=número+1 escribe número

fin fin

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


EJEMPLOS ALGORITMIA

MULTIPLICACIONES CON SUMAS Introducir dos números por teclado y realizar su producto usando el operador Suma Ej: 3x4 4+4+4

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


EJEMPLOS ALGORITMIA

MULTIPLICACIONES CON SUMAS Introducir dos números por teclado y realizar su producto usando el operador Suma Ej: 3x4 4+4+4 Resultado = 0 Repite 3 veces Resultado=Resultado + 4

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


EJEMPLOS ALGORITMIA MULTIPLICACIONES CON SUMAS Introducir dos números por teclado y realizar su producto usando el operador Suma Ej: 3x4 4+4+4 Resultado = 0 Repite 3 veces Resultado=Resultado + 4 Introduce N1 Introduce N2 Resultado = 0 Repite N1 Resultado=Resultado + N2 © Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


EJEMPLOS ALGORITMIA POTENCIAS CON PRODUCTOS Introducir dos números por teclado y realizar su potencia usando el operador producto Ej: 3^4 3*3*3*3

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


EJEMPLOS ALGORITMIA POTENCIAS CON PRODUCTOS Introducir dos números por teclado y realizar su potencia usando el operador producto Ej: 3^4 3*3*3*3 Resultado = 1 Repite 4 veces Resultado=Resultado * 3

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


EJEMPLOS ALGORITMIA POTENCIAS CON PRODUCTOS Introducir dos números por teclado y realizar su potencia usando el operador producto Ej: 3^4 3*3*3*3 Resultado = 1 Repite 4 veces Resultado=Resultado * 3 Introduce BASE Introduce EXPONENTE Resultado = 1 Repite EXPONENTE Resultado=Resultado * BASE © Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


EVENTOS

¿Cómo se inicia un programa? - Botón de inicio - Sucesión de un evento o acción Podemos ejecutar un programa, o un trozo de un programa cuando se produzca: UN EVENTO - Pulsar una tecla - Hacer click con el ratón - Recibir un dato - Interactuar dos objetos de nuestro programa ….. Los eventos los veremos ya con SCRATCH

© Microlog Tecnología y Sistemas SL c/Andrés Obispo 37-5 Madrid @micrologt pedidos@microlog.es 917595910


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.