1
00:00:05,890 --> 00:00:12,020
Hola bienvenidos a un nuevo capítulo de este curso donde vamos a habrá un poco de operadores matemáticos

2
00:00:12,020 --> 00:00:16,580
de comparación condicionales y qué raro que suena lo que estoy diciendo pero no se preocupen que es

3
00:00:16,580 --> 00:00:18,350
más fácil de lo que parece.

4
00:00:19,330 --> 00:00:22,770
Bueno vamos a usar para trabajar la última configuración así la probamos.

5
00:00:22,790 --> 00:00:26,030
Me refiero a la configuración de cómo usamos las ventanas.

6
00:00:26,030 --> 00:00:32,470
Recuerden que esto mismo lo van a poder hacer solamente con la idea de Arduino pero en esta oportunidad

7
00:00:32,470 --> 00:00:35,010
lo que vamos a hacer es abrir Atom.

8
00:00:35,140 --> 00:00:40,660
Ya lo tengo listo por acá después de abrir Arduino y hacer clic en el icono de Arduino y si no hicieron

9
00:00:40,660 --> 00:00:47,020
otra cosa se les va a abrir en el último proyecto en el que trabajaron variables como yo tengo un Arduino

10
00:00:47,020 --> 00:00:53,820
conectado puedo apretar Control Shift M o comando Shift.

11
00:00:54,040 --> 00:01:00,070
En mi caso porque tengo Mac y se va a abrir la consola yo por lo general cómodo hacia la derecha.

12
00:01:00,190 --> 00:01:08,620
La consola tiene algún botón como limpiar la pantalla acá tengo que acá tengo un botón para un selector

13
00:01:08,710 --> 00:01:14,080
un botón o un selector para elegir la velocidad con o sin ajuste de línea.

14
00:01:14,080 --> 00:01:16,230
Ya vamos a ver qué quiere decir eso.

15
00:01:16,230 --> 00:01:18,470
Vieron que no hay muchos datos.

16
00:01:18,910 --> 00:01:22,930
Se empieza a estropear o se empieza a enrollar la pantalla.

17
00:01:22,960 --> 00:01:25,350
Los datos van subiendo y se pierden por arriba.

18
00:01:25,350 --> 00:01:30,220
Bueno si yo quiero leer algo y que se quede quieto aunque estén apareciendo nuevos datos destino el

19
00:01:30,220 --> 00:01:36,980
auto scroll es muy útil así que yo por lo general me acomodo así no me gusta que ocupe tanto porque

20
00:01:37,360 --> 00:01:38,230
por ahora no lo uso.

21
00:01:38,260 --> 00:01:44,470
Fíjense que la parte del código de esta ventana yo le dejo bastante chica porque a mí lo que más me

22
00:01:44,470 --> 00:01:53,020
interesa es ver esta parte a donde me muestra los posibles errores Bueno de hecho que si compile bien

23
00:01:53,060 --> 00:01:58,280
me tendría que compile vamos a probar si compilation pero es el programa viejo que habíamos hecho la

24
00:01:58,280 --> 00:02:00,890
vez pasada así que vamos a ir.

25
00:02:01,160 --> 00:02:08,390
Recuerden que en Mac es un poco distinto en Windows los menús aparecen pegados a la ventana en la que

26
00:02:08,390 --> 00:02:11,450
estoy trabajando en Mac aparecen siempre en el mismo lugar.

27
00:02:11,540 --> 00:02:18,380
Entonces como yo tengo activo esta ventana el menú que veo aquí a la izquierda corresponde a Arduino.

28
00:02:18,440 --> 00:02:20,880
Entonces voy a ir a archivo de Arduino.

29
00:02:21,020 --> 00:02:23,040
Voy a hacer un nuevo proyecto.

30
00:02:23,300 --> 00:02:25,250
Se abre una nueva ventana.

31
00:02:25,250 --> 00:02:32,810
Ya puedo cerrar tranquilo de atrás la cómodo pero tiene un nombre provisorio genérico y yo le quiero

32
00:02:32,810 --> 00:02:40,980
dar el nombre de lo que vamos a hacer ahora entonces yo tendría que ir al Archivo Guardar como para

33
00:02:40,980 --> 00:02:47,710
agregarle con otro nombre pero aparece como Grid como desactivado aparece el guardar cómo.

34
00:02:48,040 --> 00:02:53,160
Entonces lo que está sucediendo es lo siguiente Me tengo que ir a Preferencias.

35
00:02:53,340 --> 00:02:58,800
Ustedes probablemente tengan preferencias en archivo acá de esta preferencia en Mac sale acá en este

36
00:02:58,800 --> 00:03:00,970
menú que se llama Arduino.

37
00:03:00,960 --> 00:03:09,160
Voy a preferencias me voy un momentito a usar editor externo lo destinado por un momento.

38
00:03:09,510 --> 00:03:17,710
Ahora sí Art chivo guardar cómo o contra si ese es lo mismo.

39
00:03:17,710 --> 00:03:26,060
Entonces ahora si me va a permitir ponerle un nombre distinto y le vamos a poner a esto operadores para

40
00:03:26,060 --> 00:03:30,260
ser genéricos y simples operadores.

41
00:03:30,290 --> 00:03:31,360
Listo.

42
00:03:32,110 --> 00:03:38,720
Bueno entonces ahora está listo para que si quieres tomar el camino de seguir usando el IDE de Arduino

43
00:03:39,200 --> 00:03:43,580
en vez de usar esta fantástica configuración no hay problema.

44
00:03:43,610 --> 00:03:45,990
Seguís escribiendo código acá.

45
00:03:46,040 --> 00:03:53,030
Por supuesto como esta ventana la haces un poquito más grande pero pero Acompáñame aunque sea en este

46
00:03:53,030 --> 00:03:58,540
capítulo con esta modalidad que te muestra algunas cosas y después decidí tranquilo.

47
00:03:58,540 --> 00:04:01,570
Bueno qué va a pasar.

48
00:04:01,590 --> 00:04:07,970
Necesito volver a dejar vuelvo a preferencias usar editor externo.

49
00:04:11,790 --> 00:04:17,330
Pero como yo estuve tocando acá recién para mostrarles me pide que grabe.

50
00:04:17,350 --> 00:04:19,810
Bueno bueno bueno ya grabé.

51
00:04:19,910 --> 00:04:23,330
Archivo.

52
00:04:23,360 --> 00:04:30,850
Preferencias preferencias y vamos a poner un editor externo.

53
00:04:31,090 --> 00:04:31,820
Ok.

54
00:04:31,850 --> 00:04:39,410
Ben se pone gris listo ya no puedo tocar más acá y vamos a trabajar y vamos a trabajar desde Atom.

55
00:04:39,880 --> 00:04:41,100
Archivo.

56
00:04:41,660 --> 00:04:55,800
Pero me vengo a Tommen cambia el menú Archivo Abrir me voy me voy a Arduino y esto se llamaba operadores

57
00:04:55,810 --> 00:04:59,000
abre la carpeta DoubleClick bien.

58
00:04:59,730 --> 00:05:02,520
Ya se me abrió la carpeta operadores.

59
00:05:02,520 --> 00:05:09,750
Esto lo puedo cerrar en cosas que tenía de antes recuerden que para trabajar más cómodo yo puedo achicar

60
00:05:09,750 --> 00:05:15,600
el árbol que prácticamente nosotros no vamos a usar el árbol de archivos tenemos uno solo así que con

61
00:05:15,600 --> 00:05:15,950
éste.

62
00:05:15,990 --> 00:05:24,590
Con esta pestañita yo puedo cerrar directamente la columna dependiendo de la resolución de su monitor

63
00:05:24,600 --> 00:05:33,370
si les queda muy chico con control más comãn más en mi caso puedo agrandar la letra o la puedo achicar

64
00:05:33,970 --> 00:05:37,620
agrandar porque sé que van a querer Verdía.

65
00:05:37,780 --> 00:05:38,850
No quiero ser exagerado

66
00:05:42,730 --> 00:05:49,700
empecemos a ver los operadores estoy tan ansioso por mostrarles algunas ventajas de Atom de a poquito

67
00:05:49,710 --> 00:05:50,850
lo vamos a ir descubriendo.

68
00:05:54,770 --> 00:06:02,360
Bueno vamos a repasar habíamos dicho que estas eran funciones ya va a llegar y ya vamos a ver qué son

69
00:06:02,360 --> 00:06:04,890
funciones pero básicamente se acuerdan.

70
00:06:04,920 --> 00:06:10,850
Esta se ejecuta una sola vez una sola vez que quiere decir que cuando enchufamos la placa hacemos andar

71
00:06:10,850 --> 00:06:15,680
nuestro programa primero se van a ejecutar todas las instrucciones que yo pongo acá adentro.

72
00:06:16,720 --> 00:06:26,670
Y después cae o entra en este Luv que no es más que el famoso bucle infinito y lo que va a suceder es

73
00:06:26,670 --> 00:06:34,560
que todas las instrucciones que yo vaya colocando aquí adentro se van a repetir cíclicamente Asia va

74
00:06:34,560 --> 00:06:39,970
a ser un 1 2 3 4 5 1 2 3 4 5 y voy a repetir de manera infinita.

75
00:06:39,970 --> 00:06:50,920
Bueno arranquemos operadores de qué nos pueden llegar a servir las variables si no podemos operarlas.

76
00:06:51,020 --> 00:07:00,100
O sea sumando restando o comparando con otras para tomar decisiones y de poco entonces para eso aparecen

77
00:07:00,130 --> 00:07:01,600
los operadores.

78
00:07:01,600 --> 00:07:03,160
Vamos a aprobar.

79
00:07:03,190 --> 00:07:09,840
Vamos a empezar con ejemplos que es la manera más divertida y fácil de aprender y declarar un entero

80
00:07:11,420 --> 00:07:12,550
le vamos a llamar.

81
00:07:12,640 --> 00:07:17,440
Vamos a llamar dinero en caja

82
00:07:20,160 --> 00:07:23,580
igual a cero le asigna un valor en cuanto la declaró

83
00:07:26,260 --> 00:07:32,200
entonces cómo vamos a trabajar por consola para ir viendo lo que sucede.

84
00:07:32,200 --> 00:07:33,680
Se acuerdan seria.

85
00:07:33,760 --> 00:07:42,370
Vamos a iniciar el puerto serial en velocidad nueve mil seiscientos punto y coma.

86
00:07:42,370 --> 00:07:49,970
Nunca nos olvidemos de los punto y coma mire le saco el punto y coma grabo Bence fijense aparece el

87
00:07:49,970 --> 00:08:00,450
código acá funciona con Pilo y me dice Se esperaba una coma o un punto y coma cuando yo tengo un error

88
00:08:01,860 --> 00:08:09,050
además de marcarme lo acá me dice hasta hasta el número de fila donde está el error o sea no hay excusas.

89
00:08:09,060 --> 00:08:12,510
Esto es parece complicado pero que nadie se entere.

90
00:08:12,510 --> 00:08:15,080
Cuando empezamos a trabajar esto no lo contemos demasiado.

91
00:08:15,080 --> 00:08:18,450
Es fácil es fácil porque tenemos muchas muchas ayudas.

92
00:08:18,450 --> 00:08:27,240
Miren me dice que se esperaba un punto y coma antes de la llave y me da como número de línea 6 o sea

93
00:08:27,690 --> 00:08:33,230
me dice antes de esta llave y antes de estas llaves que tranquilamente podría haber estado ahí arriba.

94
00:08:33,240 --> 00:08:43,440
Miren si las hubo con Pilo me dice que en el archivo Línea 5 en la línea 5 que me fije que antes de

95
00:08:43,440 --> 00:08:49,450
esa llave se esperaba un punto y coma es este punto y cómo que me está faltando.

96
00:08:49,490 --> 00:09:01,740
Pablo Sánchez Mera con pelo perfecto insisto varias cosas que no se enteren por qué es fácil.

97
00:09:01,740 --> 00:09:10,390
Y en segundo término si aprendiste a programar en un lenguaje aprendiste en todos es una manera de decir.

98
00:09:10,510 --> 00:09:17,920
Obviamente con lo que te estoy diciendo te quiero decir que si aprendiste C++ y bueno tenés adentro

99
00:09:18,040 --> 00:09:22,120
el 80 por ciento el 70 por ciento de cualquier otro lenguaje.

100
00:09:22,120 --> 00:09:23,350
No estoy exagerando.

101
00:09:23,590 --> 00:09:24,550
Sigo.

102
00:09:25,120 --> 00:09:28,030
Acabábamos de hacer andar el puerto serial

103
00:09:34,420 --> 00:09:40,180
lo hacemos esperar 100 milisegundos para darle tiempo a que arranque ese puerto serial y vamos a empezar

104
00:09:44,090 --> 00:09:48,810
a modificar algo le vamos a poner unos números.

105
00:09:48,820 --> 00:09:52,000
Por qué cambié lo voy a hacer más corto para que sea más fácil de escribir.

106
00:09:52,300 --> 00:09:58,210
Pero bueno quería dejar en claro que es que este es el nombre de la variable.

107
00:09:58,210 --> 00:10:12,930
Bueno algo importante y dentaria se llama esto que es darle niveles o categorías o entidades a las porciones

108
00:10:12,930 --> 00:10:20,560
de código y ahí empezamos lo que va entre llaves sea lo que pertenece a una función yo le voy a poner

109
00:10:21,430 --> 00:10:29,770
unas líneas o un espacio una tabulación en realidad dependiendo el autor serían tres espacios pero se

110
00:10:29,780 --> 00:10:31,880
utiliza la tecla Tab.

111
00:10:31,920 --> 00:10:39,400
Aun así yo estoy por presionar estaba ahí lo apreté y ya se acomoda tres espacios más adentro.

112
00:10:39,750 --> 00:10:46,690
Si yo por X motivo yo acá tuviera algo que ya estamos por ver por ejemplo como son los condicionales

113
00:10:48,200 --> 00:10:52,610
esto es un condicional se abre y se cierra una llave y yo acá adentro voy a poder escribir código o

114
00:10:52,750 --> 00:11:00,940
no el código que yo escribo acá adentro va a ir también una tabulación más adentro pero bueno y sin

115
00:11:00,940 --> 00:11:05,140
darme cuenta estuve revelando algunas de las ayudas de Atom y las tengo reservada para dentro de un

116
00:11:05,140 --> 00:11:05,540
ratito.

117
00:11:06,100 --> 00:11:12,980
Bueno sigamos ya puede empezar a sacar cosas por pantalla.

118
00:11:13,330 --> 00:11:21,740
Vamos a un operador que ya lo habíamos visto en capítulo en un capítulo anterior y es número voy a decir

119
00:11:21,740 --> 00:11:24,100
el número es igual.

120
00:11:24,120 --> 00:11:33,240
Yo acá estoy usando sin darme cuenta un operador de asignación cuando pongo un solo signo igual le estoy

121
00:11:33,730 --> 00:11:40,960
asignando a la variable número el valor que voy a escribir de este lado del igual puede ser un número

122
00:11:41,130 --> 00:11:45,950
que eso lo escribo directamente de manera literal en la jerga.

123
00:11:45,970 --> 00:11:50,610
Los programadores solemos decir Jarkko digamos.

124
00:11:51,010 --> 00:11:59,520
Es una manera de decirlo en español es una manera de españolizar el término o o escribir a mano.

125
00:11:59,540 --> 00:12:05,570
Pero bueno no es seria el término es es cuando escribimos literal literalmente un número

126
00:12:08,650 --> 00:12:11,450
u otra opción es decir que es igual a otra variable.

127
00:12:11,620 --> 00:12:16,660
En el capítulo anterior habíamos dicho que números y Buela número lo hacíamos con cuenta pero lo mismo

128
00:12:17,470 --> 00:12:19,640
es igual al número más 1.

129
00:12:19,660 --> 00:12:28,990
Qué hacía esto en definitiva sumarle 1 a la variable número número arranca valiendo cero número vale

130
00:12:29,350 --> 00:12:36,540
voy a escribir a cero entonces estoy diciendo que el número va a ser igual a lo que tenía número cuando

131
00:12:36,540 --> 00:12:37,530
tenía cero

132
00:12:40,090 --> 00:12:42,020
más uno.

133
00:12:42,320 --> 00:12:44,510
Después de esta línea cuánto va a valer.

134
00:12:44,510 --> 00:12:49,570
Número 1 Esta es una manera de sumarle 1.

135
00:12:50,030 --> 00:12:52,920
También le podría sumar 10 le podría sumar 100.

136
00:12:52,920 --> 00:13:00,910
5 1 el número que yo quiera ahora bien hay un operador de asignación

137
00:13:04,400 --> 00:13:06,680
que nos hace la vida un poco más fácil.

138
00:13:06,830 --> 00:13:10,670
Y es que es muy normal sobre todo en microcontroladores.

139
00:13:10,670 --> 00:13:18,680
Sumarle 1 a una variable o necesite es muy normal que necesitemos incrementar de a uno una variable.

140
00:13:18,680 --> 00:13:25,310
Entonces como eso es algo que se usa mucho tenemos una manera de describirlo rápido de una manera fácil

141
00:13:25,760 --> 00:13:29,960
que sería poniendole variable y dos veces el signo más.

142
00:13:29,960 --> 00:13:34,580
Esto lo que hace así como está es sumarle uno a la variable número.

143
00:13:34,580 --> 00:13:38,090
O sea que si yo agarro voy a hacer lo que hacemos los programadores.

144
00:13:38,090 --> 00:13:40,490
Copiar pegar pegar pegar.

145
00:13:40,520 --> 00:13:51,000
Acá lo que estoy haciendo es dejar a número en un valor 4 porque le sume 4 veces el número 1 primer

146
00:13:51,090 --> 00:13:57,980
operador aritmético que vimos la suma la suma después de asignación.

147
00:13:58,020 --> 00:14:02,460
Por supuesto que no es aritmético es un operador de asignación

148
00:14:04,570 --> 00:14:05,410
sigamos

149
00:14:08,450 --> 00:14:16,500
el más más que acabamos de ver número más más viene a ser un operador mixto porque está asignando y

150
00:14:16,500 --> 00:14:18,360
sumando al mismo tiempo está sumando uno.

151
00:14:18,920 --> 00:14:28,010
Bueno sigamos vamos no tenemos que estar muy avanzados en la matemática para darnos cuenta que si queremos

152
00:14:28,010 --> 00:14:37,370
restar vamos a utilizar un número es igual al número menos 1 por ejemplo menos 10 o menos 100 y acá

153
00:14:37,370 --> 00:14:42,830
lo que estamos haciendo es restarle a la variable número el número que ponemos a la derecha.

154
00:14:42,830 --> 00:14:47,560
Podría decir tranquilamente tanto para suma como para resta.

155
00:14:47,690 --> 00:14:55,160
Número 2 con nuestro número lo de poner que es igual a 23 y tranquilamente puedo decir qué número es

156
00:14:55,160 --> 00:15:07,130
igual a número menos número dos.

157
00:15:07,300 --> 00:15:13,060
Entonces estoy diciendo que la variable número va a ser igual a lo que tenga la variable número en ese

158
00:15:13,060 --> 00:15:15,880
momento que es cero menos 23.

159
00:15:15,910 --> 00:15:21,100
Entonces a esta altura número va a quedar igual va a ser igual.

160
00:15:21,100 --> 00:15:23,530
A esta altura a menos 23.

161
00:15:23,530 --> 00:15:26,560
Esto que escribo acá no es una línea de código de código por supuesto.

162
00:15:27,070 --> 00:15:33,820
Entonces podríamos ir viendo pero lo vamos a hacer un ratito en un ratito sabemos cómo sale esto por

163
00:15:33,820 --> 00:15:41,190
consola y bueno de la misma manera vamos a poder multiplicar con el asterisco.

164
00:15:41,190 --> 00:15:43,760
O vamos a poder dividir con la barra.

165
00:15:45,170 --> 00:15:46,250
Veamos.

166
00:15:46,250 --> 00:15:52,550
Voy a poder decir que puedo poner o crear

167
00:15:55,470 --> 00:16:01,480
resultado y no le pongo un valor.

168
00:16:01,600 --> 00:16:12,860
Que vamos a poner 32 entonces a cambio puedo decir que el resultado es igual a número dividido.

169
00:16:13,050 --> 00:16:21,030
Número dos estamos haciendo una división podría ser una multiplicación pero fíjense que como de antemano

170
00:16:21,180 --> 00:16:25,940
ya me imaginaba que el resultado de estos dos puede que sea un número decimal.

171
00:16:25,950 --> 00:16:33,210
Si yo quiero aprovechar o captar ese número decimal ya utilicé un float un número que tenga punto flotante

172
00:16:34,780 --> 00:16:38,600
algo muy importante a tener en cuenta cuando empecemos a hacer operaciones.

173
00:16:38,620 --> 00:16:43,600
Tenemos que contemplar el tipo de dato en primer lugar si no queremos que se pierdan los decimales tenemos

174
00:16:43,600 --> 00:16:50,700
que ser un float si no supongamos si yo he vivido 5 divido 2 Cuánto me da 2,5.

175
00:16:50,710 --> 00:16:57,010
Pero si ese 2,5 lo guardo en un int en un entero solo se va a guardar la porción entera me voy a quedar

176
00:16:57,010 --> 00:16:57,700
como un 2.

177
00:16:57,700 --> 00:17:01,510
El resultado se va a perder la parte de la parte decimal.

178
00:17:02,650 --> 00:17:10,840
Entonces volviendo como yo ya puedo presumir de que el resultado me va a dar decimal ha resultado.

179
00:17:10,840 --> 00:17:16,570
A esta se llama resultado donde voy a guardar el resultado valga la redundancia de operar estos números

180
00:17:16,960 --> 00:17:18,340
lo creé como float.

181
00:17:18,490 --> 00:17:21,750
Algo importante es el desbordamiento.

182
00:17:21,760 --> 00:17:22,710
Ojo con eso.

183
00:17:22,720 --> 00:17:24,430
Y qué es el desbordamiento.

184
00:17:24,430 --> 00:17:30,460
Se acuerdan que había un número máximo que yo puedo guardar en un Ninth y que si ir a corto o era pequeño

185
00:17:30,460 --> 00:17:38,840
ese número no me alcanzaba tenía que usar un lonko que era otro tipo de variable bueno ojo con el desbordamiento.

186
00:17:38,850 --> 00:17:46,300
Yo tengo que tener en cuenta que el resultado de operar mis variables no supera ese número máximo entonces

187
00:17:46,630 --> 00:17:52,600
si por un lado tengo que ser eficiente tengo que ahorrar memoria si no a números grandes usa enteros

188
00:17:52,870 --> 00:17:58,810
y si tengo miedo o sospecho de que el número a lo largo del programa va a crecer y va a superar los

189
00:17:58,810 --> 00:18:06,520
máx el tamaño máximo que puede almacenar un entero que era 65000 y pico de valores estos son enteros

190
00:18:06,640 --> 00:18:10,600
este tamaño son enteros en microcontroladores Arduino.

191
00:18:10,780 --> 00:18:17,260
A lo mejor es cuando cuando uses C++ desarrollando programas en un ordenador aplicaciones para ordenador

192
00:18:17,290 --> 00:18:22,840
por ejemplo o para móviles un entero puede almacenar mucho más números pero eso es harina de otro costal.

193
00:18:22,870 --> 00:18:24,380
Si vamos con lo nuestro.

194
00:18:24,910 --> 00:18:36,430
Bueno vamos a probar esto ya que estamos entonces ya tenemos claro los matemáticos vamos a decir seria

195
00:18:36,430 --> 00:18:39,150
el punto print N

196
00:18:42,010 --> 00:18:43,580
y qué quiero imprimir.

197
00:18:43,610 --> 00:18:45,700
Es decir entre comillas.

198
00:18:45,700 --> 00:18:52,540
El resultado es dos puntos de un espacio el espacio para que quede lindo y que el resultado no aparezca

199
00:18:52,540 --> 00:18:53,880
pegado los dos puntos.

200
00:18:54,240 --> 00:19:03,060
No hay nada no hay nada místico que haga más este más es un operador no es un símbolo de concatenación.

201
00:19:03,250 --> 00:19:12,430
Cuando el más es usado entre dos strings lo que hace es unir estos strings o cadenas de texto.

202
00:19:12,820 --> 00:19:22,580
Entonces más quiero pasar resultado quiero pasarle resultado el valor del resultado pero transformado

203
00:19:22,580 --> 00:19:30,050
en string porque la función print LN espera que le pase cadenas de texto no espera que le pasen números

204
00:19:30,530 --> 00:19:34,020
entonces acabo de poner string se acuerda.

205
00:19:34,020 --> 00:19:35,330
Esta era la manera de convertir

206
00:19:38,730 --> 00:19:47,340
una variable de tipo entero de tipo float en una cadena de texto string es la función y entre paréntesis

207
00:19:47,370 --> 00:19:53,530
entre estos dos paréntesis le debo pasar el número que quiero convertir a texto y este paréntesis donde

208
00:19:53,560 --> 00:19:55,410
salió y salió de acá.

209
00:19:55,430 --> 00:20:00,910
Y qué lindo que es Seaton porque en cuanto pongo un cursor en un paréntesis ya me está marcando cuál

210
00:20:00,910 --> 00:20:01,870
es el que lo cierra.

211
00:20:01,870 --> 00:20:07,480
Lo pongo acá me marca el cual es el que lo cierra y con las llaves pasa lo mismo.

212
00:20:07,490 --> 00:20:08,940
Bueno en esto también.

213
00:20:09,040 --> 00:20:11,420
El IDE de Arduino es bastante bueno.

214
00:20:11,470 --> 00:20:13,080
Marco acá de marca arriba.

215
00:20:14,460 --> 00:20:16,160
Bueno probemos esto.

216
00:20:16,230 --> 00:20:21,360
Controlé se grabo acá yo tengo mi programa lo voy a compilar.

217
00:20:21,460 --> 00:20:25,320
No tengo ningún error genial y lo carga en la placa.

218
00:20:25,330 --> 00:20:26,230
Vamos a ver qué pasa.

219
00:20:30,990 --> 00:20:36,020
Como subido y tengo un problema acá miren la velocidad.

220
00:20:36,020 --> 00:20:45,930
A qué velocidad trabajamos 9900 9600 baudios y yo acá tengo que ponerlo en subir para que vean su o

221
00:20:46,360 --> 00:20:47,590
9600.

222
00:20:47,610 --> 00:20:48,100
Ahora si

223
00:20:51,220 --> 00:20:58,860
quien apareció haga el resultado es 1 punto cero cero a ver qué sucede acá.

224
00:21:00,530 --> 00:21:10,140
32 dividido 23 me da uno con treinta y nueve qué pasa con los decimales.

225
00:21:11,180 --> 00:21:19,510
Y lo que sucede es algo curioso y es que cuando estemos trabajando en C con Arduino la división de dos

226
00:21:19,600 --> 00:21:30,710
números enteros de dos variables de tipo int siempre nos va a dar otra variable de número entero entonces.

227
00:21:30,730 --> 00:21:39,290
Acá tenemos dos caminos para que la división de estos dos números nos dé el resultado con decimales.

228
00:21:39,290 --> 00:21:45,920
A pesar de que esto está preparado para recibir decimales necesitamos que uno o los dos sean de tipo

229
00:21:45,920 --> 00:21:54,250
flotante entonces bueno vamos a aprovechar una de las capacidades de Atom cómo es esto.

230
00:21:54,260 --> 00:21:58,670
Mira clickea una vez normal ahí presiono.

231
00:21:58,920 --> 00:22:00,630
En mi caso es.

232
00:22:00,840 --> 00:22:07,380
En tu caso si tenés Windows es control y sin soltar presión o también arriba entonces puede borrar esto

233
00:22:07,380 --> 00:22:14,670
y poner acá float Bravo cargó en la placa

234
00:22:21,490 --> 00:22:24,630
mejor no fijense.

235
00:22:24,630 --> 00:22:31,040
No sé si notaron que acaso le agregó un dos cuando convierto un número a través de la función de string

236
00:22:31,590 --> 00:22:34,140
y pongo una coma ya que pongo un entero.

237
00:22:34,170 --> 00:22:41,320
Estoy diciendo la cantidad de decimales que quiero ver grabó Carmen la placa

238
00:22:47,110 --> 00:23:00,030
cómo lo ven bueno ya estamos dividiendo y vamos a pasar ahora a ver un último operador si bien hay más

239
00:23:00,510 --> 00:23:08,250
operadores aritméticos estamos viendo los más usados sobre todo cuando trabajamos con microcontroladores

240
00:23:09,450 --> 00:23:16,440
y si hay uno que me falta que no es de lo más usado pero sí puede que haga falta lo he usado más de

241
00:23:16,440 --> 00:23:19,380
una oportunidad y es el módulo o resto.

242
00:23:19,410 --> 00:23:25,450
En definitiva es lo que nos sobra después de hacer una división que no da un resultado exacto.

243
00:23:25,590 --> 00:23:34,310
Entonces puedo decir que se hace de la siguiente manera declara una variable llamada el resto.

244
00:23:34,820 --> 00:23:41,030
Aprovecho para aclarar que la que el operador módulo sólo funciona con enteros y va a dar resultados

245
00:23:41,120 --> 00:23:42,530
enteros.

246
00:23:42,530 --> 00:23:44,330
Entonces yo podría decir

247
00:23:47,850 --> 00:23:58,670
que el resto es igual a 7 por ciento uso el uso del símbolo por ciento pero en realidad es en la manera

248
00:23:58,670 --> 00:24:08,810
en la que representamos el operador resto 5 que estoy diciendo que me guarde la variable resto El resto

249
00:24:08,810 --> 00:24:11,250
de dividir 7 entre 5.

250
00:24:11,330 --> 00:24:12,230
Vamos a probar

251
00:24:15,310 --> 00:24:18,600
copio y pego el resultado.

252
00:24:18,600 --> 00:24:31,850
Bueno vamos a hacerla completa el resto de dividir 7 en 3 sin es y acá pongo resta.

253
00:24:32,530 --> 00:24:41,410
Listo grabo carbón en la placa y veamos perfecto

254
00:24:44,300 --> 00:24:50,840
hay algo que vengo haciendo pero no expliqué y ya muy pronto lo voy a hacer y se refiere al alcance

255
00:24:50,900 --> 00:24:58,040
de las variables pero me remito decirles que cuando declaren variables lo hagan a Carrillo acá se declaran

256
00:24:58,250 --> 00:25:03,320
y cuando las declaren después van a poder acceder o modificarlas.

257
00:25:03,320 --> 00:25:10,460
Tanto en el ZetaP como en el Luv como en cualquier otra función que vayamos a crear estas variables

258
00:25:10,460 --> 00:25:14,480
de acá las llamamos variables globales porque abarcan a todo el código.

259
00:25:14,600 --> 00:25:17,080
Yo puedo acceder a ellas y modificarlas en cualquier parte.

260
00:25:17,420 --> 00:25:23,210
Pero vamos a ver que eso puedo crear variables locales o variables que solo pertenezcan a esta función

261
00:25:23,240 --> 00:25:26,260
o a ésta o a cualquier otra pero no me quiero adelantar.

262
00:25:26,340 --> 00:25:26,870
Sigamos.

263
00:25:26,870 --> 00:25:35,210
Ya tenemos los operadores aritméticos y se vienen los operadores de bajo arresto

264
00:25:38,240 --> 00:25:43,310
si vienen los operadores de comparación los operadores de comparación.

265
00:25:43,310 --> 00:25:49,010
Como su nombre lo indica sirven para comparar dos variables para versiones más grande que otra para

266
00:25:49,010 --> 00:25:56,790
ver si son iguales para ver si son distintas y esto nos sirve para lo mejor o lo más importante que

267
00:25:56,790 --> 00:26:03,870
tiene la programación tomar caminos tomar decisiones o en otras palabras crear algoritmos.

268
00:26:03,900 --> 00:26:11,520
Si pasa esto quiero hacer tal cosa y si pasa esto otro quiero hacer esta otra cosa entonces tenemos

269
00:26:11,640 --> 00:26:21,320
dos dos variables creadas y de poco nos van a servir los comparadores.

270
00:26:21,920 --> 00:26:29,780
Estos operacionales de comparación si no aprendemos a dominar los condicionales los condicionales son

271
00:26:30,650 --> 00:26:34,790
una herramienta para poder tomar decisiones.

272
00:26:34,880 --> 00:26:43,500
Uno de los más conocidos es el condicional y el condicional if tiene una estructura que es la siguiente

273
00:26:43,860 --> 00:26:51,690
con la palabra reservada if entre paréntesis voy a poner la condición voy a decir si número

274
00:26:54,020 --> 00:26:56,850
es igual a número dos.

275
00:26:56,920 --> 00:27:05,380
Bean apareció el primer operacional de comparación es un doble signo igual.

276
00:27:05,570 --> 00:27:15,570
Eso quiere decir que si el valor que contiene la variable número es igual al valor que contiene la variable

277
00:27:15,570 --> 00:27:16,600
número dos.

278
00:27:16,680 --> 00:27:18,240
Por eso es de comparación.

279
00:27:18,300 --> 00:27:24,660
Si eso quiere decir if si número es igual a número dos.

280
00:27:24,690 --> 00:27:29,720
Y acá entre llaves voy a poner el código que quiero que se ejecute.

281
00:27:29,820 --> 00:27:38,700
Voy a decir serial print n si son iguales.

282
00:27:38,750 --> 00:27:39,320
Primeras

283
00:27:42,880 --> 00:27:46,940
bueno vamos a probarlo.

284
00:27:47,660 --> 00:27:48,300
Claro.

285
00:27:48,300 --> 00:27:51,510
Acaso puse una sola línea de código.

286
00:27:51,510 --> 00:27:54,580
Acaso puedo poner todas las líneas que yo quiera.

287
00:27:54,600 --> 00:28:00,840
Si estos dos números son iguales o lo que es lo mismo si esta condición se cumple porque en definitiva

288
00:28:00,840 --> 00:28:09,090
cuando yo comparo estos dos números esto se transforma en un valor verdadero en aquel famoso truco que

289
00:28:09,090 --> 00:28:09,750
habíamos visto

290
00:28:13,770 --> 00:28:19,560
si estos números son desiguales se va a transformar en un folles y no se va a ejecutar lo que esté acá

291
00:28:19,560 --> 00:28:20,360
adentro.

292
00:28:20,610 --> 00:28:26,140
Entonces bueno para demostrarles y que me crean que se puede ejecutar todo lo que pongo yo adentro.

293
00:28:26,280 --> 00:28:30,970
Debemos agregar otras líneas más en serio

294
00:28:40,070 --> 00:28:46,430
grabó pero vamos a tener un poco el código para que esto sea más entendible.

295
00:28:46,450 --> 00:28:56,160
Ahí listo vieron yo creo ONIF y estas líneas las metí un poquito más adentro cuando grabo por última

296
00:28:56,160 --> 00:28:58,590
vez carga en la placa y veamos el resultado.

297
00:29:03,490 --> 00:29:05,380
Total mando o no.

298
00:29:05,740 --> 00:29:14,310
Cómo puedo asegurar esto es algo típico tengo dos opciones o esto no se está cumpliendo y esto no anda.

299
00:29:14,540 --> 00:29:15,340
O qué está pasando.

300
00:29:15,420 --> 00:29:17,240
Lo primero que pasa es que en ningún momento

301
00:29:22,750 --> 00:29:31,230
en ningún momento inicio el puerto sedería esto es a medida que lo sabemos de memoria así todo me pasaría

302
00:29:31,230 --> 00:29:34,910
lo mismo entonces es buena práctica

303
00:29:40,500 --> 00:29:46,650
poner alguna oración que me dé idea de lo que está pasando entonces esta parte se va a ejecutar sí o

304
00:29:46,650 --> 00:29:53,490
sí porque es cuando arranca esto sí o sí se ejecuta una vez y después viene la consulta sin número es

305
00:29:53,490 --> 00:29:58,830
igual al número 2 va a hacer esto me hago cargo en la placa y espero el resultado

306
00:30:02,660 --> 00:30:09,310
bueno tengo la certeza de que la placa anda iniciando programa pero qué sucede.

307
00:30:09,320 --> 00:30:13,360
Obviamente son distintos los números así que vamos a ponerlos.

308
00:30:13,370 --> 00:30:16,580
23 gravó

309
00:30:22,520 --> 00:30:27,770
mi obra funcionó aquí adentro puedo hacer otras cosas puedo decir

310
00:30:30,350 --> 00:30:38,470
ahora qué número es igual a 100 entonces por ejemplo en el código que yo pongo acá adentro puedo poner

311
00:30:39,400 --> 00:30:42,460
o puedo modificar variables.

312
00:30:42,460 --> 00:30:49,660
Otra cosa que puedo hacer es volver a comparar volver a comparar o sea volver a poner otro acá adentro.

313
00:30:51,440 --> 00:30:57,110
Fíjense que este no va a ir a la misma altura del código que tenía pero lo que va adentro este se va

314
00:30:57,110 --> 00:30:59,680
a ir otra vez y dentado.

315
00:30:59,720 --> 00:31:02,640
O sea otra vez con un Taub hacia adentro.

316
00:31:02,640 --> 00:31:04,090
Acabais el nuevo Código.

317
00:31:04,650 --> 00:31:11,280
Bueno quieren ver algo de Atom quieren ver algo de Atom sino miren alguna ayudita.

318
00:31:11,280 --> 00:31:17,760
Es la siguiente Escribo if presiona Enter y ya me prepara el esqueleto de la estructura de Elif.

319
00:31:17,810 --> 00:31:21,690
Mira él me pide IHF y ya me prepara los paréntesis y Acaya.

320
00:31:21,690 --> 00:31:29,720
Le escribo así sin tocar nada derecho a la condición tal número igual a tal otro y listo y me dice Pablo

321
00:31:29,920 --> 00:31:32,730
que escribir el código correspondiente Elif.

322
00:31:32,770 --> 00:31:35,230
Bueno más fácil no se puede.

323
00:31:36,400 --> 00:31:43,120
Sigamos con otros comparadores no vamos a hacer de nuevo súper matemáticos para descubrir que con este

324
00:31:43,120 --> 00:31:49,790
símbolo estoy comparando si este número es mayor que éste menor.

325
00:31:50,080 --> 00:32:00,170
Tengo mayor o igual menor o igual y distinto con éste que es así.

326
00:32:00,260 --> 00:32:12,990
Este signo de migración es la negación entonces es no igual o sea distinto.

327
00:32:12,990 --> 00:32:14,700
Estos son los principales

328
00:32:17,010 --> 00:32:20,280
comparadores que vamos a usar

329
00:32:22,950 --> 00:32:23,650
entonces.

330
00:32:23,670 --> 00:32:24,400
Repasemos.

331
00:32:24,410 --> 00:32:38,480
Se puedo tener si condición hago esta cosa pero a su vez yo puedo poner en el código otro a la misma

332
00:32:38,480 --> 00:32:39,090
altura.

333
00:32:40,470 --> 00:32:43,320
Si if número

334
00:32:46,230 --> 00:32:48,420
igual número dos

335
00:32:53,280 --> 00:32:54,290
era un poco esto

336
00:32:59,660 --> 00:32:59,860
con

337
00:33:08,450 --> 00:33:17,960
vamos un poco bien acabo de preguntar si son distintos ya que voy a preguntar si son iguales grabo entonces

338
00:33:17,960 --> 00:33:23,620
estoy diciendo si son iguales el programa va a venir ejecutando línea por línea.

339
00:33:23,720 --> 00:33:27,220
Bien llega acá mi pregunta número es igual al número dos.

340
00:33:27,320 --> 00:33:35,860
Si son iguales se va a ejecutar esto después si no son iguales esto no se ejecuta y salta a esta línea.

341
00:33:35,870 --> 00:33:37,600
Esta es la próxima pregunta.

342
00:33:37,700 --> 00:33:44,160
Son distintos y si son distintos se va a ejecutar esta entonces dos números.

343
00:33:44,160 --> 00:33:50,700
No tenemos muchas opciones o son iguales o son distintos así que estoy seguro que o esto o esto se va

344
00:33:50,700 --> 00:33:55,990
a ejecutar probemos si funciona nuestro programa es un detector de números iguales o números distintos.

345
00:33:56,020 --> 00:34:06,710
Bueno alojarlo grabamos espero resultados como era de esperar entró en estas dos líneas y se ejecutaron

346
00:34:06,710 --> 00:34:08,160
porque los números son iguales.

347
00:34:08,330 --> 00:34:12,940
Con sólo modificar uno grabo espero el resultado

348
00:34:17,020 --> 00:34:18,410
no son iguales.

349
00:34:18,460 --> 00:34:20,880
Esto no se ejecutó y si se ejecutó esto.

350
00:34:21,820 --> 00:34:30,430
Bueno hemos tenido un capítulo intensísimo lo saludo fuerzas falta menos y nos vemos en la próxima.
