Activa JavaScript para disfrutar de los vídeos de la Mediateca.
tico1bac_u4: programas y algoritmos
Ajuste de pantallaEl ajuste de pantalla se aprecia al ver el vídeo en pantalla completa. Elige la presentación que más te guste:
Hola, en el primer apartado de este bloque de programación hemos preguntado
00:00:00
¿Qué es un programa?
00:00:07
Pues, esta es una imagen que muestra lo que es un programa
00:00:10
Y el programa es lo que vemos aquí
00:00:16
Es decir, es un conjunto, una secuencia de comandos, de órdenes, de código
00:00:18
que le dicen a un ordenador que es lo que debe hacer
00:00:27
le avisa cuando empieza el programa, cuando empiezan las instrucciones
00:00:31
se van realizando las distintas instrucciones, los distintos pasos
00:00:37
y finalmente se le dice al ordenador detente
00:00:44
es decir, hasta aquí ha llegado el programa
00:00:48
aquí tenemos ese mismo programa
00:00:50
para que veamos como funciona instrucción a instrucción, comando a comando
00:00:56
normalmente los ordenadores ejecutan los programas de una sola pasada
00:01:03
y normalmente vemos el resultado de esa secuencia de instrucciones
00:01:10
aquí vamos a verla paso a paso
00:01:17
bien, voy a darle aquí primero a presionar para decirle
00:01:19
A partir de ahora empieza el programa.
00:01:24
Modo gato, porque tengo aquí una instrucción que me dice que va a tener que ir al punto central de la pantalla de Scratch.
00:01:28
Hago clic, se ha ido ahí.
00:01:36
Aquí estaríamos bajando el lápiz.
00:01:38
No vemos el lápiz.
00:01:41
Y en esta y en la siguiente estaríamos dándole un tamaño al lápiz y un color a ese lápiz.
00:01:42
además como estoy probando que es lo que hace el programa
00:01:48
como lo hace, me viene bien una instrucción
00:01:53
un comando que diga borrar la pantalla
00:01:57
ahora mismo no hay nada que borrar pero voy a darle
00:02:00
a continuación la siguiente instrucción ya es algo que vamos a poder
00:02:04
ir viendo, apuntar en esta dirección
00:02:10
hago clic, se queda en la dirección que estaba por defecto
00:02:13
Y nos movemos 150 pasos, cambiamos de dirección, nos movemos 100 pasos, volvemos a cambiar de dirección, nos movemos otros 150 pasos, volvemos a cambiar por último de dirección y nos movemos los 100 pasos que nos faltan para completar ese rectángulo que es lo que hace.
00:02:18
A continuación subiríamos el lápiz por si se mueve el cato y sigue dibujando
00:02:44
Ahora ya no dibujaría nada y nos detenemos
00:02:52
Aquí para el programa
00:02:56
Bien, voy a juntar ahora todas las instrucciones estas que forman el programa propiamente dicho
00:02:58
Para verlo en su estado más natural
00:03:05
Que es una instrucción a continuación de la otra
00:03:08
y que el ordenador ejecutará en una sola pasada
00:03:12
es decir, no nos vamos a dar cuenta de cada uno de esos pasos
00:03:17
que ha hecho antes para dibujar el rectángulo
00:03:21
aquí estamos, voy a seleccionar del lápiz
00:03:24
otra vez lo de borrar, para que veáis
00:03:36
para que empecemos desde cero, borrar
00:03:39
lo dejo ahí, si ahora hago clic aquí en presionar
00:03:43
o en esta bandera, todas estas instrucciones
00:03:47
se ejecutarán como que inicie instantáneamente a la velocidad
00:03:51
a la que funciona el microprocesador de este ordenador
00:03:55
con lo cual no voy a ver más que el resultado, voy a hacerle clic
00:03:59
así es, veis que ha hecho
00:04:04
el rectángulo pero no hemos visto los pasos
00:04:08
vamos a detenernos un segundo, bueno después
00:04:10
de habernos preguntado qué es un programa, ahora nos preguntamos
00:04:15
qué es un algoritmo. En esta
00:04:20
presentación que tenéis en la web
00:04:23
aquí tengo apuntado que un programa es un algoritmo escrito en el lenguaje de los
00:04:27
ordenadores. Es decir, lo que hemos visto antes también es un
00:04:32
algoritmo, lo que pasa es que ese algoritmo está escrito en un
00:04:36
lenguaje distinto. El lenguaje de los ordenadores se refiere
00:04:39
a las instrucciones, comandos, órdenes
00:04:43
que un ordenador es capaz de interpretar y de ejecutar
00:04:47
las dos cosas, saber que es lo que tiene que hacer y poder
00:04:51
hacerlo, tengo aquí que los algoritmos pueden
00:04:55
representarse gráficamente mediante diagramas de flujo
00:04:59
esquemas o diagramas de flujo
00:05:03
y esos algoritmos a continuación se pueden programar para que los pueda
00:05:06
ejecutar un ordenador y para ello tenemos que usar un lenguaje de programación como es scratch
00:05:11
por ejemplo esto de aquí es un algoritmo este algoritmo es una secuencia de pasos que resuelven
00:05:18
un determinado problema este simplemente es un ejemplo de un por decirlo así de un problema
00:05:28
matemático, simplón, tiene como los programas
00:05:34
un inicio y un final, y en este caso
00:05:38
parece ser que hay como dos números
00:05:42
porque se pueden multiplicar, A y B, nos preguntamos
00:05:45
si A es menor que B, si lo es
00:05:50
y es verdadero, pues resulta que ese número A que es menor que B
00:05:54
lo multiplicamos por 5, lo guardamos en esta variable
00:05:58
y la mostramos como resultado de la operación
00:06:02
si A no es menor que B porque es igual o mayor
00:06:06
saldríamos de alguna manera por esta opción
00:06:12
y haríamos lo mismo, multiplicaríamos en lugar de A
00:06:16
multiplicaríamos B por 5
00:06:19
lo almacenamos en una variable y mostramos esa variable
00:06:22
Los algoritmos, para poder representarlos, hemos de utilizar una determinada nomenclatura, unos determinados símbolos.
00:06:27
Estos son los símbolos que forzosamente debemos utilizar en los algoritmos que diseñamos para resolver un determinado problema.
00:06:43
son sencillos y es, este símbolo de aquí representa el inicio o el final del propio algoritmo
00:06:53
nos servirá para indicar aquí empezamos o aquí acabamos
00:07:03
es una especie de elipse
00:07:06
este rectángulo lo utilizaremos para representar operaciones internas que hará el programa
00:07:09
después cuando se convierte ese algoritmo en un programa son operaciones que nosotros no vemos
00:07:19
es decir, no vemos el resultado de esas operaciones pero que el ordenador las está ejecutando
00:07:26
luego tenemos este paralelogramo para representar operaciones de entrada y salida
00:07:32
De entrada y salida significa que nosotros somos los que introducimos información, datos al programa, este los ejecuta, los interpreta, hace el proceso interno que corresponda y puede que nos dé el resultado de esa operación.
00:07:42
Si nos da el resultado lo hace a través de una operación de salida
00:08:01
Cuando nosotros introducimos los datos al programa sería una operación de entrada para el programa
00:08:04
Y cuando el programa nos muestra vía pantalla, por ejemplo, vía audio, vía una impresora
00:08:11
El resultado de la operación que esté realizando, esa sería una operación de salida
00:08:19
Además tenemos este rombo de aquí
00:08:26
Que nos permite presentar operaciones de sí, del tipo, si no, verdadero o falso
00:08:33
En un programa
00:08:43
En general se llaman de decisiones
00:08:45
En el sentido tenemos que decir es A mayor que B
00:08:48
O lo es o no lo es
00:08:50
entonces este tipo de cuestiones cuyas respuestas solo pueden ser del tipo lógico
00:08:52
del tipo 0 o 1, verdadero o falso, sí o no
00:09:01
ese tipo de operaciones son operaciones de decisión
00:09:06
y para ello hay que utilizar este símbolo
00:09:11
Además de estos cuatro símbolos, tendremos las líneas que unen cada una de las operaciones que tenemos aquí.
00:09:14
Cada una de las operaciones internas, operaciones de entrada y salida, de decisión, y para ello usamos las líneas de flujo.
00:09:26
Os voy a mostrar, por ejemplo, este diagrama de flujo.
00:09:36
Este diagrama del flujo representa un algoritmo
00:09:42
Un algoritmo matemático
00:09:46
¿Qué es lo que hace este algoritmo matemático?
00:09:48
En este ejemplo lo que hace es simplemente decir
00:09:53
Si el número que nosotros le damos al programa
00:09:55
Se trata de un número par
00:09:57
En inglés es even
00:09:59
O de un número impar
00:10:02
En inglés es odd
00:10:04
Vamos a ver si lo entendemos
00:10:05
Tengo los dos símbolos que hemos dicho antes de inicio
00:10:08
y finalización, siempre hay que decirle a los
00:10:12
ordenadores, al ordenador hay que decirle este programa empieza ahora y detente
00:10:16
cuando llegas a este punto, a continuación tenemos un paralelograma
00:10:20
que hemos dicho que podría ser de entrada o de salida
00:10:26
hay de hecho tres, este inicial sería de
00:10:29
entrada, es decir, si este programa lo que hace es
00:10:33
determinar si un número es par o impar, somos nosotros
00:10:37
los que le damos el número al programa
00:10:41
introducimos el número en el programa
00:10:44
sería una operación de entrada
00:10:48
para almacenar internamente el programa
00:10:50
para almacenar el número que nosotros
00:10:55
le escribamos a través del teclado
00:10:57
por ejemplo, lo almacena en una variable matemática
00:11:02
una variable como las que usáis exactamente en matemáticas
00:11:05
A, B, C, D, X, Y, Z, N
00:11:09
Aquí hay un poco más de libertad
00:11:13
Pueden ser palabras que podemos utilizar también como variables
00:11:15
En este caso la letra N de número
00:11:18
Bien, estos símbolos, estos rombos
00:11:21
Representan la toma de decisiones
00:11:26
Y las respuestas, como he dicho antes
00:11:30
Para esa pregunta de sí o no
00:11:33
Las respuestas son verdadero o falso
00:11:35
Sí o no, yes, no
00:11:37
Y entonces, si nosotros hemos empezado el programa, le hemos dado un número
00:11:39
Imaginad que le hemos dado el número 5
00:11:44
El programa se pregunta, ¿es el número n el almacenado número 5?
00:11:46
¿Es el número 2?
00:11:52
Y el mismo se responde porque así está establecido aquí
00:11:54
Pues no, no es el número 2
00:11:59
Si no es el número 2, se vuelve a hacer otra pregunta
00:12:01
¿Es el número 1?
00:12:04
si es no, vuelve a ir por aquí
00:12:06
si en lugar de haberle introducido el número 5
00:12:10
lo hubiésemos introducido directamente en el número 2
00:12:14
aquí se pregunta, ¿ese número que he almacenado en n es el 2?
00:12:16
él diría, pues sí, y directamente nos indicaría
00:12:21
a través de una operación de salida
00:12:24
por ejemplo, a través del monitor
00:12:26
pues n, el número 2 que hemos introducido
00:12:28
es un número par
00:12:31
Y de aquí iríamos al final y no diría más nada, se acabaría el programa
00:12:32
Acabaría diciendo n es un número par
00:12:37
Hemos dicho que hemos introducido el número 5
00:12:40
Hemos visto que el 5 no es el 2, el 5 no es el 1
00:12:44
Con lo cual aquí nos vamos y hace lo siguiente
00:12:48
En la variable n donde hemos almacenado el número
00:12:51
Ahora almacena el valor previo que tenía, 5
00:12:55
Y a ese valor previo le ha restado 2 y lo almacena en n
00:13:00
Cuando pasemos por aquí por primera vez
00:13:04
5 menos 2 son 3
00:13:07
Ahora n vale 3
00:13:09
El valor actual de n es 3
00:13:11
Volveríamos aquí y se pregunta
00:13:13
¿Ese número n que ahora mismo es 3 es el número 2?
00:13:16
Pues no
00:13:21
¿Ese número n es el número 1?
00:13:21
Pues no
00:13:24
Vale, pues entonces vuelve a hacerse esta operación
00:13:25
No lo he dicho
00:13:29
esto es una operación interna, veis que es un rectángulo, con lo cual es una operación interna
00:13:30
que nosotros no vemos que la hace, pero que internamente el microprocesador la está haciendo
00:13:34
porque el programa se lo está diciendo
00:13:40
teníamos n que era 3, 3 menos 2 es 1 y ahora n vale 1
00:13:42
bien, pues ahora vuelve por aquí y se pregunta, ¿ese n que ahora mismo vale 1 es el número 2?
00:13:48
pues no, entonces ahora aquí
00:13:56
ese n es 1, si, y ya nos dice n
00:14:00
aquí tendríamos que haber almacenado o guardado previamente el número
00:14:04
original, el 5, vale, nos dirá pues
00:14:09
n, el 5, es un número impar, y acaba el programa
00:14:12
esto mismo lo tenemos aquí
00:14:17
en Scratch, este mismo algoritmo
00:14:20
se ha pasado a un programa
00:14:24
el algoritmo es genérico
00:14:27
en principio vale para cualquier tipo de programa
00:14:30
vale para cualquier programa que escribamos
00:14:36
con cualquier lenguaje de programación
00:14:39
y en función de ese lenguaje de programación
00:14:42
nos saldrán unas instrucciones u otras
00:14:46
pero respetando a lo que dice el propio algoritmo
00:14:49
que básicamente lo que hace es ir restando dos
00:14:52
hasta llegar a dos o a uno
00:14:54
aquí lo tenemos
00:14:56
el programa
00:14:59
aquí por comentar un poquitín por encima
00:15:01
veis que primero nos
00:15:04
para que el usuario se entere
00:15:06
que es lo que hace el programa
00:15:09
tiene que haber algún tipo de
00:15:11
interacción entre ambos
00:15:12
el programa y el usuario
00:15:14
con lo cual aquí nos va a preguntar
00:15:16
el propio programa
00:15:18
es decir, nos va a mostrar por pantalla
00:15:19
introduce un número entero
00:15:21
vale, y espera, esto ya es una instrucción propia de este lenguaje de programación
00:15:23
de Scratch, el gato nos va a preguntar eso
00:15:28
bien, almacena ese número que nosotros
00:15:32
introduzcamos por teclado, por ejemplo
00:15:35
lo almacena la variable n, esa respuesta que nosotros damos
00:15:39
en la variable n, muy bien
00:15:44
a continuación guarda ese número
00:15:46
original, como decía anteriormente, lo guarda en otra variable
00:15:52
distinta, num, podría ser la variable
00:15:56
h, eso lo de menos, aquí el programa está usando
00:16:00
dos variables, una que va a ir actualizando y otra donde
00:16:04
almacenamos el número original
00:16:08
muy bien, ¿qué hacía el algoritmo?
00:16:11
ir restándole 2 al número que nosotros le damos, pues hasta llegar
00:16:16
a 2 o llegar a 1, si llega a 2 sabrá que es un número par
00:16:20
si llega a 1 sabrá que es un número impar
00:16:24
esto es lo que hace esta secuencia
00:16:27
de aquí, este bucle de aquí, cuando se repiten varias
00:16:33
órdenes hasta que se cumple una determinada condición
00:16:36
a ese conjunto de órdenes que se van a repetir un número de veces
00:16:40
le llamamos un bucle, de momento voy a pasar
00:16:44
de comentar esto, vamos a ver que entonces
00:16:48
hemos seguido las instrucciones del propio algoritmo
00:16:52
si n es 2, le vamos a decir
00:16:56
di, es decir, el número original
00:16:59
es un número par, si no es 2
00:17:03
se pregunta, es un entonces, pues si lo fuese
00:17:08
el número original que tenemos en esta variable
00:17:12
número es número impar
00:17:16
si se acaba el programa, veis que esto se acaba
00:17:18
por aquí, cuando acabe esto ya se detiene el programa
00:17:23
vale, si el número no es
00:17:28
inicialmente ni 2 ni 1, pues entonces entraremos
00:17:32
en el bucle que hemos dicho antes y lo que vamos, no ha sido 2
00:17:36
no ha sido 1, lo que vamos a hacer es ir restándole, fijaros que aquí
00:17:40
al valor inicial de n, el que tengamos, le vamos a ir
00:17:44
restando 2 y lo almacenamos en n, n se va a ir actualizando
00:17:48
cada vez, con el número de antes, con el número 5
00:17:52
podría ser que dijésemos aquí, vale
00:17:56
fija, dime, introduce un número n, 5
00:17:59
n vale 5 y num también vale 5 ahora mismo inicialmente
00:18:03
y vamos a repetir este
00:18:09
bucle hasta que n o sea 0 o sea menos 1, eso hace referencia a que tenemos que salirnos
00:18:12
cuando ya hayamos pasado por 2 o hayamos pasado por 1, vale pues n es 2, si n es 2,
00:18:19
n hemos dicho que es 5, hacemos esto, no lo es, si no, si nos preguntamos es n entonces
00:18:29
es 1, no, y entonces acabamos aquí, n ni es 2, ni es 1 y acabamos aquí, ¿cuánto vale
00:18:36
n?, pues 5 menos 2, n vale 3, como esta bucle se repite hasta que n valga 0 o menos 1 y
00:18:45
ahora mismo n vale 3, ese bucle se repite, vale, pues n vale 3, n no es 2, n no es 1
00:18:54
Y ahora n-2, 3-2 es 1
00:19:05
Como no hemos llegado a ninguno de estos dos valores todavía
00:19:09
Se repite el proceso
00:19:15
¿Es n2? No
00:19:16
¿Es n1? Sí
00:19:18
Entonces va a decir el programa que el original, este num que estaba aquí
00:19:21
El número original 5 es un número impar
00:19:26
Durante dos segundos
00:19:30
Se acaba aquí el programa, se acaba aquí
00:19:32
Y como ya he repetido, como vamos a restarle
00:19:35
1 menos 2 es menos 1
00:19:39
Hemos llegado a una de las dos condiciones, nos salimos del programa
00:19:44
Si en vez de 5 hubiese sido 6, hubiésemos llegado al 0
00:19:48
6 menos 2 es 4, 4 menos 2 es 2
00:19:53
2 menos 2 es 0, y entonces saldría por 0
00:19:57
De ahí estos dos valores de 0 y menos 1 simplemente para poder salirnos cuando alcanzamos justamente los números 2 para pares o 1 para impares
00:20:01
Vamos a ejecutarlo
00:20:12
Hago clic e introduzco un número entero
00:20:14
Esta frase que está aquí es la que dice
00:20:18
Para el sistema esto sería una operación de salida
00:20:21
Ahora yo voy a introducir el número 13
00:20:24
Para el sistema esta es una operación de entrada
00:20:27
Yo introduzco usando el teclado el número 13
00:20:31
Y le doy a intro
00:20:34
Como esto va a la velocidad del microprocesador
00:20:37
Nos saca durante dos segundos
00:20:41
Que voy a repetirlo
00:20:45
Que ese número es un número impar
00:20:47
Voy con un número
00:20:49
76 para que sea par
00:20:51
76 es un número par
00:20:54
Y esto es la unión de lo que es un algoritmo y de lo que es un programa
00:20:59
Es todo
00:21:05
- Subido por:
- Maximino R.
- Licencia:
- Reconocimiento - Compartir igual
- Visualizaciones:
- 220
- Fecha:
- 20 de abril de 2020 - 22:36
- Visibilidad:
- Público
- Centro:
- IES ALFREDO KRAUS
- Duración:
- 21′ 08″
- Relación de aspecto:
- 1.78:1
- Resolución:
- 1920x1080 píxeles
- Tamaño:
- 28.14 MBytes