1
00:00:06,250 --> 00:00:13,460
Bueno y llegamos a las iteraciones a esta sentencia que vamos a ver ahora y al mundo de las iteraciones

2
00:00:13,460 --> 00:00:21,380
y aquí es importante recalcar que en GOW no existen los comandos las instrucciones que comúnmente usábamos

3
00:00:21,440 --> 00:00:23,270
en otros lenguajes.

4
00:00:23,270 --> 00:00:31,190
Me estoy refiriendo al dúo Weyl al Weyl al dúo Antti a muchos a muchos comandos que nosotros venimos

5
00:00:31,190 --> 00:00:38,320
arrastrando a lo largo de muchas décadas de programación engo todo lo que tiene que ver con iteración

6
00:00:38,330 --> 00:00:47,060
solamente lo maneja con la instrucción for esta instrucción que nosotros comúnmente la usamos para hacer

7
00:00:47,060 --> 00:00:55,610
una iteración numérica para mover un valor e ir incrementando su valor hasta que termina y nosotros

8
00:00:56,000 --> 00:01:02,960
esta instrucción ahora la vamos a usar en GOW para absolutamente todo porque han enriquecido de tal

9
00:01:02,960 --> 00:01:10,100
manera que la vamos a simplificar con esta instrucción sea para Uruguay sea para un Duván TIL sea para

10
00:01:10,100 --> 00:01:11,780
lo que necesitemos.

11
00:01:11,780 --> 00:01:19,120
Vamos a crear en nuestro proyecto una carpeta y la vamos a llamar Eger 0 5.

12
00:01:19,190 --> 00:01:22,170
Vamos a crear nuestro archivo me.

13
00:01:22,220 --> 00:01:24,080
Aquí vamos a hacer lo habitual.

14
00:01:24,080 --> 00:01:31,940
Bueno muy bien vamos a empezar desde lo más simple hasta lo más complejo vamos a saber un simple foro

15
00:01:31,970 --> 00:01:34,020
para que ustedes vean como funciona.

16
00:01:34,130 --> 00:01:41,120
Vamos a crear una variable de tipo I que es la más usada en los ciclos for le vamos a colocar un valor

17
00:01:41,120 --> 00:01:48,560
de 1 y vamos a hacer un Forde y mientras así sea menor a 10 vamos a hacer aquí.

18
00:01:48,610 --> 00:01:57,110
Vamos a hacer un FBT Priv y le vamos a colocar el valor de ahí para que ustedes vean simplemente cómo

19
00:01:57,110 --> 00:01:57,950
es esto.

20
00:01:57,950 --> 00:02:02,640
Vamos a hacer que ICEA sea menor y se ha incrementado en 1.

21
00:02:02,660 --> 00:02:10,450
Vamos a colocar así para hacerlo más simple vamos a agravarlo vamos a ir en nuestra terminal a Eger

22
00:02:10,690 --> 00:02:15,290
0 5 hacemos fundir tenemos nuestro Main apuntó.

23
00:02:15,290 --> 00:02:22,330
Vamos a ahorrar con CLS la consola y vamos a hacer un Garraf de Main puntos.

24
00:02:22,580 --> 00:02:31,010
Fíjense qué me muestra iniciando en enuno la variable y luego hitter a mostrándome el valor de ahí sin

25
00:02:31,010 --> 00:02:37,640
ningún tipo de misterio esto es hasta que ICEA igual a 10.

26
00:02:37,640 --> 00:02:39,680
Vamos a ver ejemplos más complejos.

27
00:02:39,710 --> 00:02:47,530
Este es simplemente uno Fíjense que aquí ya la estructura del foro que nosotros conocíamos ya es diferente.

28
00:02:47,780 --> 00:02:55,430
Aquí no está el incremento aquí no está la inicialización de la variable vamos a hacer un segundo ejercicio

29
00:02:55,520 --> 00:03:03,810
vamos a quitar esto y aquí si se va aparecerá el foro tradicional vamos a decir que y lo inicializar

30
00:03:03,850 --> 00:03:08,840
mos 1 vamos a usar el punto y coma igual que en C++.

31
00:03:08,840 --> 00:03:18,440
Vamos a colocar la condición de que sea menor o igual a 10 y aquí le vamos a poner el integrador muy

32
00:03:18,440 --> 00:03:28,550
bien y ahora internamente hace falta quitar esto y aquí tenemos lo mismo que habíamos hecho previamente.

33
00:03:28,670 --> 00:03:37,520
Vamos a ejecutar nuevamente y tenemos nuestro foro que va desde 1 hasta 10 porque aquí le agregué el

34
00:03:37,520 --> 00:03:40,790
menor igual y no solo el menor.

35
00:03:40,790 --> 00:03:45,170
Muy bien vamos a ser un caso más más representativo.

36
00:03:45,170 --> 00:03:48,510
Vamos a por ejemplo vamos a poner un número.

37
00:03:48,530 --> 00:03:56,750
Lo vamos a inicializar en cero y vamos a ser un foro simplemente fíjense que esto aquí ya no hay chequeo

38
00:03:56,750 --> 00:04:04,100
de condiciones ni variables simplemente voy a hacer un foro que va iterar en un loop indefinido.

39
00:04:04,100 --> 00:04:12,820
Aquí voy a poner un FME y le voy a decir que muestre un mensaje que dice continúo aquí voy a decirle

40
00:04:12,820 --> 00:04:21,580
que me va a pedir por teclado un número el número secreto a ver si quitamos eso y ahora lo que vamos

41
00:04:21,580 --> 00:04:23,510
a hacer es pedir por teclado.

42
00:04:23,530 --> 00:04:31,510
Recuerden que para Windows vamos a usar esto vamos a pedir por teclado el número de esta manera.

43
00:04:31,510 --> 00:04:39,170
De esta manera Chocón el puntero voy a ingresar números que van a alojarse en la variable número y luego

44
00:04:39,170 --> 00:04:40,870
voy a hacer un chequeo.

45
00:04:40,870 --> 00:04:48,280
A ver si el operador ingresó el número secreto el número secreto es 100 por lo cual vamos a hacer que

46
00:04:48,450 --> 00:04:50,070
números sea igual a 100.

47
00:04:50,470 --> 00:04:59,080
Entonces lo que voy a hacer es hombre el Breck lo que hace es me rompe el ciclo for tenga la condición

48
00:04:59,080 --> 00:05:05,230
que tenga me lo rompe y continúa con la instrucción que esté definida debajo del ciclo.

49
00:05:05,710 --> 00:05:12,760
Esto es para romper loops porque si yo no colocara en ningún lado este fork eran un loop constante y

50
00:05:12,760 --> 00:05:21,600
nunca sale de aquí vamos a ejecutarlo vamos a nuestra terminal nos ponen el mensaje de que continúo

51
00:05:21,910 --> 00:05:29,720
ingrese el número secreto aquí colocón 45 me vuelve a decir lo mismo como diciendo el número secreto

52
00:05:29,720 --> 00:05:38,150
no es ese colocó 67 y cuando coloco 100 el for y el programa termina.

53
00:05:38,420 --> 00:05:38,800
Por qué.

54
00:05:38,800 --> 00:05:43,880
Porque no hay más instrucciones no hay más código y el Breck me ha salido.

55
00:05:44,500 --> 00:05:51,280
Entonces aquí estamos aprendiendo que hay una serie de instrucciones que van a operar dentro de un ciclo

56
00:05:51,280 --> 00:05:58,960
fork que son en este caso Breck y ahora vamos a ver la otra instrucción que es continuo vamos a borrar

57
00:05:58,960 --> 00:06:05,870
esto ustedes y lo quieren ir copiando pone en pausa en el vídeo copian y lo van probando ustedes mismos.

58
00:06:05,950 --> 00:06:13,450
Vamos a colocar por ejemplo vamos a crear una variable y le vamos a mover un cero ya va a saber bouquets

59
00:06:13,480 --> 00:06:20,050
de tipo entero vamos a hacer una iteración mientras así sea menor a 10.

60
00:06:20,320 --> 00:06:26,350
Y aquí lo que voy a hacer es un FME donde voy a mostrar perdón.

61
00:06:26,440 --> 00:06:35,550
No voy a usar este voy a usar este F porque ahora no voy a mostrar solamente un texto sin formato o

62
00:06:35,550 --> 00:06:43,180
una variable sino que voy a usar las máscaras de formato para poder mostrar valor enmascarado dentro

63
00:06:43,180 --> 00:06:44,030
de un texto.

64
00:06:44,050 --> 00:06:52,000
Esto ya lo hemos visto que son los verbos el numeral el numeral no el por ciento de ahora vamos a usar

65
00:06:52,000 --> 00:06:52,960
otro.

66
00:06:52,960 --> 00:06:55,760
No vamos a usar el mismo así.

67
00:06:56,080 --> 00:07:03,490
Así seguimos en la misma línea vamos a colocar un violín para que antes de mostrar el texto haya un

68
00:07:03,560 --> 00:07:14,290
carreter valor de dos puntos y aquí vamos a colocar el famoso verbo y cuando termina el texto le vamos

69
00:07:14,290 --> 00:07:16,200
a poner separados por comas.

70
00:07:16,360 --> 00:07:17,320
La variable.

71
00:07:17,320 --> 00:07:25,810
Si yo tuviera más de una variable que intercalar con el texto yo aquí por ejemplo tendría otro texto

72
00:07:25,810 --> 00:07:34,990
cualquiera tendría otro verbo entonces implica que necesito más de una variable se pone luego como argumentos

73
00:07:35,080 --> 00:07:41,860
separados por comas toda la lista de variables que van a ir intercalándose en nuestro texto.

74
00:07:41,920 --> 00:07:47,560
La primer variable va a ir al primer verbo y la segunda variable al segundo y así se va armando nuestra

75
00:07:47,560 --> 00:07:49,660
frase y nuestro texto.

76
00:07:49,690 --> 00:07:55,850
Ahora vamos a dejarlo así muy bien y lo que vamos a hacer ahora es.

77
00:07:56,020 --> 00:08:03,790
Nosotros tenemos un Infor que lo vamos a hacer iterar desde cero hasta nueve de cero hasta nueve porque

78
00:08:03,790 --> 00:08:11,720
cuando sea 10 se va a caer de la condición y le vamos a colocar ONIF que sí y vale 5.

79
00:08:12,040 --> 00:08:22,210
Vamos a abrir aquí nuestras comillas mete print jefe nuevamente vamos a usar el mismo tipo de Prin multiplicamos

80
00:08:22,210 --> 00:08:29,530
por dos y le colocamos un Newley colocar esto es lo mismo que usar un print LN.

81
00:08:29,530 --> 00:08:38,170
La diferencia es que el print LN nos fuerza un Yulin y nosotros quizás aquí queramos darle un formato

82
00:08:38,170 --> 00:08:39,130
diferente.

83
00:08:39,280 --> 00:08:46,300
En este caso yo estoy mostrándoles cómo usando uno o lo otro si lo que quiero hacer es forzar un New

84
00:08:46,300 --> 00:08:54,190
Line al final lo puedo hacer con este verbo con este comando que es barra invertida en Esto es lo conoceran

85
00:08:54,190 --> 00:09:01,170
porque ya viene de otros lenguajes y viene del linos mismo el linos viene de iónicas en Unix lo usaban

86
00:09:01,170 --> 00:09:11,030
usó muchísimo y esto es algo ya universal así que luego del de esto vamos a multiplicar por dos nuestro

87
00:09:11,030 --> 00:09:19,600
y vamos a colocar que es igual ahí por dos íbamos a colocar esta instrucción que es continuo.

88
00:09:19,790 --> 00:09:26,600
Vamos a ver vamos a agregar aquí un texto en breves segundos vamos a ver cómo funciona todo esto así

89
00:09:26,600 --> 00:09:34,060
que no se preocupe para qué coloco esto para que ustedes vean que en ciertas ocasiones va a pasar por

90
00:09:34,070 --> 00:09:41,540
eso por este lugar y en otra ocasión que es cuando sea igual a cinco.

91
00:09:41,570 --> 00:09:48,470
No va a mostrar este texto vamos a ejecutarlo vamos a agravarlo vamos a hacer una cosa vamos a barrer

92
00:09:48,470 --> 00:09:58,490
la terminal vamos a subir un poquito esto sea la terminal borramos con CLS que es Clear screen.

93
00:09:58,490 --> 00:10:08,240
Vamos a ejecutar nuestro voto y veamos ahora perfecto cuando el valor es cero se ejecuta este print

94
00:10:08,360 --> 00:10:12,380
de abajo viene todo bien se ejecuta le suma uno.

95
00:10:12,420 --> 00:10:21,620
Hoy cuando es 1 lo mismo 2 3 cuando llega a 5 y entró aquí lo multiplica por 2 y el continuo lo que

96
00:10:21,620 --> 00:10:30,890
hace es mandar el control de la ejecución nuevamente al inicio del ciclo for no sigue continúa.

97
00:10:31,220 --> 00:10:39,560
Eso se hace para cuando nosotros queremos torcer la iteración y queremos volver a chequear la condición.

98
00:10:39,590 --> 00:10:45,120
Queremos volver a chequear la condición sin que se ejecuten las instrucciones debajo.

99
00:10:45,140 --> 00:10:53,030
Esto es necesario van a haber muchas condiciones mucho código en el que van a necesitar algo así y no

100
00:10:53,030 --> 00:11:00,260
todos los lenguajes lo han implementado con lo cual a veces se hace difícil el tema de el control de

101
00:11:00,260 --> 00:11:02,450
la condición y de la iteración.

102
00:11:02,450 --> 00:11:10,070
Entonces vimos una instrucción que es Breck que me permite romper la condición y salir del ciclo y tenemos

103
00:11:10,070 --> 00:11:16,670
continuo que nos manda nuevamente arriba a ver cuál es la condición y si tenemos que volver a hacer

104
00:11:16,760 --> 00:11:20,460
una nueva iteración o simplemente el Forth se cae.

105
00:11:20,480 --> 00:11:24,050
Vamos a ver una última un último ejemplo el ciclo.

106
00:11:24,070 --> 00:11:31,100
Luego cuando hagamos más ejercicios que tienen que ver con desarrollos reales vamos a ver que por ejemplo

107
00:11:31,100 --> 00:11:38,120
en vectores también se usa el ciclo Forth con otra característica pero lo vamos a ver bien cuando veamos

108
00:11:38,120 --> 00:11:39,450
vectores.

109
00:11:39,500 --> 00:11:46,790
Ahora vamos a ver un último ejemplo del ciclo Forth que tiene que ver con un atu que me va a permitir

110
00:11:47,420 --> 00:11:54,440
enviar el control el puntero de ejecución a un comienzo de rutina determinado.

111
00:11:54,440 --> 00:12:02,420
Vamos a borrar esto recuerden poner pausa y copiar el texto para poder ir ejecutándolo.

112
00:12:02,690 --> 00:12:09,890
Vamos a crear un bar una variable que se vaya Amauri que va a ser un número entero y que le voy a mover

113
00:12:09,890 --> 00:12:10,610
cero.

114
00:12:10,700 --> 00:12:18,570
Todo esto sería innecesario simplemente moverle cero pero estamos practicando distintos tipos de código

115
00:12:19,220 --> 00:12:25,910
y aquí lo que voy a hacer es llamar a una sección esto es como crear una sección cuando todos colocan

116
00:12:25,910 --> 00:12:28,610
un nombre y luego le agregan dos puntos.

117
00:12:28,640 --> 00:12:31,540
Es como un inicio de código.

118
00:12:31,670 --> 00:12:38,750
Esto es inocuo al ejecutar la ejecución no imprime nada simplemente es como decir es como marcar un

119
00:12:38,900 --> 00:12:46,990
lugar una línea de código y decirle bueno en la línea 8 hay una marca una etiqueta llamada rutina vamos

120
00:12:47,000 --> 00:12:55,610
por debajo de ella a colocar un un simple for cuando sea menor a 10 que lo va a ir ejecutando y yo le

121
00:12:55,610 --> 00:13:04,020
voy a decir por ejemplo que si es igual a cuatro vamos a abrir nuestra llave y es igual hay más dos.

122
00:13:04,100 --> 00:13:11,330
O sea voy a voy a romper con la iteración natural donde ahí se le va a ir incrementando uno aquí la

123
00:13:11,330 --> 00:13:20,570
estoy forzando un 2 le estoy forzando a que los sume con un 2 y voy a hacer un premio Howlin que dice

124
00:13:20,720 --> 00:13:26,060
Voy a rutina dice Voy a rutinas sumando dos.

125
00:13:26,090 --> 00:13:33,260
Ahí me está informando de lo que estoy haciendo y aquí lo que hago es tu rutina.

126
00:13:33,260 --> 00:13:39,500
Vamos a continuar colocando código debajo para que ustedes vean luego en ejecución cómo funciona.

127
00:13:39,500 --> 00:13:49,970
Voy a hacer un printed F el valor doy dos puntos colocamos el verbo de tipo numérico de base 10 le colocamos

128
00:13:49,970 --> 00:13:52,790
un Yulin y colocamos la variable.

129
00:13:52,880 --> 00:13:59,960
Luego de esto es fundamental sumarle 1 hay muy bien vamos a repasar un poquito esto inicializar una

130
00:13:59,960 --> 00:14:08,810
variable en cero creamos una rutina dentro de la rutina se ejecuta un código llamado un ciclo Ford con

131
00:14:09,080 --> 00:14:17,330
Menorah 10 y lo que hago es iterar sumándole uno ahí pero cuando es igual a 4 lo que hago es rompo con

132
00:14:17,330 --> 00:14:18,720
esa lógica.

133
00:14:18,800 --> 00:14:22,690
Sumo 2 muestro algo por pantalla y vuelvo.

134
00:14:22,700 --> 00:14:27,050
Esto es como un continuo que lo vimos hace unos minutos.

135
00:14:27,170 --> 00:14:36,770
Esto es como el continuo con la diferencia que en lugar de ir al inicio del bucle va a ir a donde nosotros

136
00:14:36,770 --> 00:14:37,460
le digamos.

137
00:14:37,490 --> 00:14:40,190
Yo aquí puedo agregar más código.

138
00:14:40,190 --> 00:14:47,410
Yo aquí puedo agregar un print lo que sea un texto puedo agregar operaciones matemáticas y las va ejecutar

139
00:14:47,410 --> 00:14:54,710
a todas entienden la diferencia de lo que es un continuo que siempre va a ir a la instrucción for a

140
00:14:54,710 --> 00:15:02,600
un auto que va a ir a donde yo le diga vamos a ejecutar esto vamos a borrar la pantalla la consola y

141
00:15:02,600 --> 00:15:03,730
vamos a ejecutar.

142
00:15:03,730 --> 00:15:10,280
Bueno muy bien siempre cayó aquí abajo porque el mensaje que me está mostrando es éste valorde y es

143
00:15:10,280 --> 00:15:11,130
igual a cero.

144
00:15:11,150 --> 00:15:13,160
Muy bien 2:3.

145
00:15:13,220 --> 00:15:21,890
Y cuando llegó a cuatro me aparece el texto voy a rutinas sumando dos ahí va basta rutina vuelve a entrar

146
00:15:21,890 --> 00:15:27,530
en el ciclo for fijense que el ciclo fuese importante del ciclo Forno está inicializar la variable si

147
00:15:27,530 --> 00:15:29,120
no no funcionaría.

148
00:15:29,120 --> 00:15:38,050
Lo que quiero mostrar simplemente toma el valor inicial de ahí y lo chequea el ciclo for se ejecuta.

149
00:15:38,090 --> 00:15:48,800
Pero ahora me ha pegado un salto donde el 5 no lo ha mostrado sino que ya ahora vale 6 y empieza nuevamente

150
00:15:48,800 --> 00:15:56,430
con el ciclo for hasta que llega a 9 a 10 esto es lo que hace el Go atu de rutina.

151
00:15:56,540 --> 00:15:58,530
Espero que lo hayan entendido.

152
00:15:58,640 --> 00:16:07,190
Recuerden de copiarlo ejecutarlo jugar un poquito Banesto decir moviendo valores haciendo cosas para

153
00:16:07,190 --> 00:16:08,970
ir practicando.

154
00:16:08,990 --> 00:16:11,450
Bueno esto ha sido el ciclo for.

155
00:16:11,460 --> 00:16:18,440
Esto ha sido el tema de las iteraciones y nos vemos en el próximo capítulo para seguir avanzando en

156
00:16:18,440 --> 00:16:19,810
el lenguaje Go.
