1 00:00:06,769 --> 00:00:09,050 Hola alumnos, buenas tardes. 2 00:00:11,009 --> 00:00:18,609 Hoy vamos a ver el tema 8 de la programación de ciencias nivel 1. 3 00:00:20,190 --> 00:00:25,969 Este tema trata sobre el pensamiento cotacional, la programación y la robótica. 4 00:00:26,949 --> 00:00:31,210 Pues bien, lo primero que tenemos que saber es qué es un programa. 5 00:00:32,070 --> 00:00:37,049 Dentro de la programación, un programa es un software que podemos tener instalado en el ordenador 6 00:00:37,049 --> 00:00:43,170 y este software se compone de un algoritmo, que es un conjunto de instrucciones 7 00:00:43,170 --> 00:00:46,409 destinadas a cumplir una determinada tarea o resolver un problema. 8 00:00:47,929 --> 00:00:56,329 El programa también tiene una estructura de datos que pueden ser o bien gráficos o bien textuales, 9 00:00:56,329 --> 00:01:07,390 O de texto, o, por ejemplo, gráficos como el de Windows, que está a base de botones, menús, cuadros de texto, etc. 10 00:01:08,530 --> 00:01:17,790 Entonces, para realizar un programa, en principio, en primer lugar, hay que tener claro el problema o tarea que se quiere realizar, 11 00:01:17,790 --> 00:01:26,329 luego plantear o abordar esa tarea y luego se elige un lenguaje de programación y se 12 00:01:26,329 --> 00:01:31,849 escribe las instrucciones en ese lenguaje para llevar a cabo esa tarea, la codificación. 13 00:01:34,189 --> 00:01:42,250 Luego, estos planos están programando algo, entonces ya digo que se hace en un lenguaje 14 00:01:42,250 --> 00:01:49,989 de programación y luego el ordenador no entiende cualquier idioma. El ordenador tiene que tener 15 00:01:49,989 --> 00:01:56,150 un lenguaje que es lenguaje máquina en el que él entiende las instrucciones que se 16 00:01:56,150 --> 00:02:05,750 les está dando. Entonces, por medio del compilador, el lenguaje de programación se traduce al 17 00:02:05,750 --> 00:02:14,669 lenguaje del ordenador que pueda entender. Bien, luego el programa se ejecuta y los 18 00:02:14,669 --> 00:02:21,009 últimos, si es necesario, se evalúan. Vamos a ver un algoritmo, ejemplo de un 19 00:02:21,009 --> 00:02:29,689 algoritmo en la línea tutorial. Hemos dicho que los algoritmos son una serie 20 00:02:29,689 --> 00:02:34,849 de instrucciones que se dan para cumplir una determinada tarea. Por ejemplo, vamos 21 00:02:34,849 --> 00:02:40,610 a ver el algoritmo para grabarse las manos. ¿Qué haríamos primero? Pues lo primero 22 00:02:40,610 --> 00:02:46,050 abrimos el grifo, luego se compran las manos, se aplica el jabón, se enjuaga, se cierra 23 00:02:46,050 --> 00:02:55,250 el grifo, se seca, uno las manos y esta sería la serie de pasos que haríamos habitualmente 24 00:02:55,250 --> 00:03:02,930 para grabarse las manos. Pues bien, eso sería un algoritmo. Un algoritmo es determinar una 25 00:03:02,930 --> 00:03:08,689 serie ordenada de tareas que nosotros queramos que haga un determinado programa. 26 00:03:10,330 --> 00:03:14,949 Bien, como he dicho antes que el lenguaje de programación es el lenguaje en el que 27 00:03:14,949 --> 00:03:24,490 se programa, entonces normalmente el lenguaje de programación es en inglés y es un idioma 28 00:03:24,490 --> 00:03:30,229 en el que hay que escribir los programas para que luego el compilador lo pueda entender 29 00:03:30,229 --> 00:03:41,050 traducir al código que entiende la máquina. Este tipo de programas pueden ser de bajo 30 00:03:41,050 --> 00:03:48,870 nivel o de alto nivel. Si son de bajo nivel, el idioma es comprensible por la máquina, 31 00:03:50,069 --> 00:03:57,469 pero no es comprensible por el ser humano. Y si es de alto nivel, es al contrario, es 32 00:03:57,469 --> 00:04:03,169 más comprensible por el ser humano, pero más alejado del lenguaje de la máquina. 33 00:04:04,310 --> 00:04:10,750 Los compiladores serían diferentes en uno que en otro. Aquí se utiliza, por ejemplo, 34 00:04:12,590 --> 00:04:23,470 el C, que es un lenguaje de programación de alto nivel, el C, el Pascal, el Java, Visual 35 00:04:23,470 --> 00:04:42,410 Para desarrollar un programa hace falta un entorno o programación o IDE, entorno integral de desarrollo, que contiene un editor de texto y un compilador que permita compilar el código fuente escrito en un lenguaje determinado. 36 00:04:42,410 --> 00:04:55,490 Hemos dicho ya que el compilador es una especie de traductor, que lo que hace es traducir al código máquina las instrucciones que tiene el programa. 37 00:04:55,490 --> 00:05:03,250 O sea, primero tenemos un programa, luego un compilador y luego el lenguaje máquina, que es lo que entiende las máquinas, que es el binario. 38 00:05:03,250 --> 00:05:18,839 Bien, lo siguiente serían los diagramas de flujo. Es una técnica que utilizan los algoritmos para representar los algoritmos por medio de gráficos. 39 00:05:18,839 --> 00:05:43,639 Los principales símbolos para el ecuación flujo es el símbolo rectangular, que indica inicio o final, decisión, entrada, interacción, entrada por teclado, salida, proceso, salida en pantalla, subproceso, conector, flujo y el conector de página de referencia. 40 00:05:44,379 --> 00:06:00,600 Pues las reglas básicas para luego elaborar un diagrama de flujo, ahora vemos un ejemplo, esto sería un diagrama de flujo, es la forma de realizar un algoritmo. 41 00:06:00,600 --> 00:06:25,879 Entonces, el algoritmo, que ya digo que son las instrucciones que se le da al programa para que realice tareas, por ejemplo, dices, vamos a diseñar, este es un ejemplo, vamos a diseñar un algoritmo para calcular el área de un triángulo cuya base mide 3 y la altura mide 4 centímetros. 42 00:06:26,759 --> 00:06:40,310 Entonces, lo primero para el algoritmo, pues este diagrama de flujo que es el de inicio, 43 00:06:40,310 --> 00:06:48,490 lo pondríamos al principio, luego esta forma rectangular que hemos visto aquí, 44 00:06:48,750 --> 00:06:54,910 es el proceso, aquí estamos metiendo datos para que calcule el área. 45 00:06:54,910 --> 00:07:01,730 Lo primero que haríamos después del botón de inicio es dar los datos de la base y los datos de la altura. 46 00:07:02,970 --> 00:07:13,129 Lo siguiente es, con la fórmula de base por altura partido por 2, sustituir y en esa fórmula meter los datos de la base y los datos de la altura, 47 00:07:13,129 --> 00:07:24,310 lo partimos por 2, y este otro diagrama de 5, que es este, salida. La salida, impresa 48 00:07:24,310 --> 00:07:31,069 o en pantalla, sería el resultado de hacer esa operación en la que hemos calculado, 49 00:07:31,069 --> 00:07:43,050 o sea, el área del triángulo que hemos calculado, con pasos ordenados, 50 00:07:43,129 --> 00:08:02,870 Para eso es el algoritmo y con unos datos en los que metemos aplicamos una fórmula, esa fórmula es la que necesitamos para calcular el área y lo último, el último bloque sería este, igual que inicio, fin. 51 00:08:02,870 --> 00:08:20,569 Bien, pues eso sería con respecto a los algoritmos. Ya digo que utilizan una nomenclatura específica para poner en los diagramas de este grupo, mediante gráficos, los principales símbolos que se necesitan. 52 00:08:20,569 --> 00:08:28,569 Luego, por otra parte, tendríamos la programación por bloques. 53 00:08:28,569 --> 00:08:30,569 La programación por bloques. 54 00:08:30,569 --> 00:08:34,570 Aquí ya no se utilizaría lenguaje de programación. 55 00:08:34,570 --> 00:08:43,570 Lo que se utiliza es un entorno de programación gráfico, como por ejemplo el Scratch. 56 00:08:43,570 --> 00:08:54,009 El Scratch se utiliza por bloques en los que los bloques estamos diciéndole a un objeto 57 00:08:54,009 --> 00:08:56,090 qué es lo que tiene que hacer. 58 00:08:56,090 --> 00:09:03,490 Esos se llaman bloques gráficos de programación, ya digo que es un ejemplo a la hora de utilizar 59 00:09:03,490 --> 00:09:12,690 una programación por bloques y se irían encajando unos detrás de otros y dando las 60 00:09:12,690 --> 00:09:18,169 órdenes que necesita el programa para que se ejecute lo que en ese momento le queremos 61 00:09:18,169 --> 00:09:25,909 decir, pues que durante dos segundos diga una cosa, toque un sonido o mueva X pasos, 62 00:09:25,909 --> 00:09:35,210 etc. El entorno de programación de Scratch, pues eso, utiliza bloques y en esos bloques 63 00:09:35,210 --> 00:09:39,970 se van poniendo ordenadamente las tareas que queremos 64 00:09:39,970 --> 00:09:43,110 en este caso que este muñeco 65 00:09:43,110 --> 00:09:50,570 las realice. Bien, todo esto se refiere al 66 00:09:50,570 --> 00:09:54,350 strass y cuentan aquí 67 00:09:54,350 --> 00:09:58,809 que es una estructura repetitiva, esto es el strass pero también se utiliza 68 00:09:58,809 --> 00:10:01,649 en los diferentes programas y los que 69 00:10:01,649 --> 00:10:06,610 los bloques permiten ejecutar un número determinado 70 00:10:06,610 --> 00:10:16,710 de veces o indefinidamente una tarea. Por ejemplo, esa estructura repetir diez veces 71 00:10:16,710 --> 00:10:22,990 o por ejemplo por siempre o por repetir hasta que esto es un condicional en el que hasta 72 00:10:22,990 --> 00:10:29,490 que sucede algo se vuelve a repetir. Esas serían las estructuras repetitivas. Los operadores 73 00:10:29,490 --> 00:10:39,679 son los que pueden ser operadores matemáticos, por ejemplo, suma, resta, multiplicación o división, 74 00:10:41,399 --> 00:10:48,940 y avanzados, redondear, raíz cuadrada, operaciones booleanas, con cadenas de caracteres, etc. 75 00:10:48,940 --> 00:10:54,899 Y luego también, aparte de las operaciones matemáticas, tenemos las variables, 76 00:10:54,899 --> 00:11:03,399 que son posibles situaciones que nos hagan modificar el estado en el que tenemos el programa. 77 00:11:03,940 --> 00:11:11,360 Son similares a cajones en los que podemos guardar datos y representan un valor, 78 00:11:11,580 --> 00:11:16,860 un texto que después de asignarlo se puede utilizar otra vez en los programas. 79 00:11:17,120 --> 00:11:22,539 El valor de la variable puede cambiar en algún punto del programa o permanecer sin cambio. 80 00:11:22,539 --> 00:11:27,080 Por lo tanto, el valor que contiene una variable es el último dato asignado a esta. 81 00:11:29,990 --> 00:11:40,230 Ya digo, por ejemplo, en Scratch tenemos movimiento, apariencia, sonido, eventos, control, operadores y bloques. 82 00:11:42,830 --> 00:11:52,429 Y una vez creada la variable, se nombra la variable, variable nueva, y la podemos utilizar, nos aparecerán porciones de ellas. 83 00:11:52,429 --> 00:11:55,149 estas variables podemos 84 00:11:55,149 --> 00:11:58,649 fijarlas a un número inicial 85 00:11:58,649 --> 00:12:01,070 o cambiarla o poner un color 86 00:12:01,070 --> 00:12:03,629 o mostrarla cuando nos interese 87 00:12:03,629 --> 00:12:09,289 entonces básicamente de lo que habla este tema 88 00:12:09,289 --> 00:12:11,629 hasta aquí habíamos terminado 89 00:12:11,629 --> 00:12:13,690 es de 90 00:12:13,690 --> 00:12:17,070 volvemos a recapitular 91 00:12:17,070 --> 00:12:21,470 de que se programa 92 00:12:21,470 --> 00:12:36,470 La programación se realiza mediante un programa de software y los programas son componentes de algoritmos y los datos estructurados, que pueden ser a base de gráficos o textuales. 93 00:12:36,470 --> 00:12:57,929 Y los pasos para realizar un programa, pues la tarea que se tiene que resolver, plantearla, utilizar un lenguaje de programación adecuado, con un compilador traducido a un lenguaje máquina y evaluar los resultados después de ejecutarlos. 94 00:12:57,929 --> 00:13:26,559 Bueno, pues ya se ha visto un ejemplo de algoritmo en la vida común y ese ejemplo de algoritmo se representa con diagramas de flujo, como he dicho, que utilizan diferentes gráficos para ir colocando esas instrucciones que se le da a un programa a la hora de mandar una tarea 95 00:13:26,559 --> 00:13:32,340 o hacer, por ejemplo, el cálculo aquí, un cálculo sencillo. 96 00:13:33,259 --> 00:13:41,639 Y luego, programando por bloques, un entorno de programación sencillo es el de Scratch. 97 00:13:41,639 --> 00:13:51,320 El de Scratch utiliza bloques gráficos de programación en los que se van encajando esas tareas 98 00:13:51,320 --> 00:14:15,159 Y lo que podemos es ir conformando una serie de acciones en las que logramos que este objeto, o cualquier otro que pongamos, realice esas tareas, dando unas órdenes, por ejemplo, de movimiento, con sensores, operadores y diferentes bloques que vamos a utilizar. 99 00:14:15,159 --> 00:14:37,759 Y lo último, que para estructuras que se repiten, que se pueden ejecutar por unos varios bloques, esas estructuras permiten realizar, por ejemplo, X veces o por siempre, o hasta que suceda otra cosa, la tarea que metemos en su interior. 100 00:14:39,259 --> 00:14:42,179 También se utilizan operadores y variables. 101 00:14:43,039 --> 00:14:45,659 Bueno, pues hasta aquí esta lección. 102 00:14:48,039 --> 00:14:52,700 La próxima clase la invertiremos para el último tema, que es el tema nuevo. 103 00:14:53,139 --> 00:15:02,340 El tema nuevo, perdón, que es ya el último que falta por dar antes de la realización del examen a la semana que viene. 104 00:15:03,100 --> 00:15:06,320 Un saludo y hasta la semana que viene.