2999a commited on
Commit
18b413c
·
verified ·
1 Parent(s): 27f70f5

Upload via hfc (batch)

Browse files

Uploaded using hfc tool

This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. .gitattributes +11 -0
  2. subir/Curso de C Básico/01-Introducción/01-Historia y evolución del lenguaje C y C.mp4 +3 -0
  3. subir/Curso de C Básico/01-Introducción/01-Historia y evolución del lenguaje C y C.vtt +229 -0
  4. subir/Curso de C Básico/01-Introducción/01-Lecturas recomendadas.txt +1 -0
  5. subir/Curso de C Básico/01-Introducción/01-Resumen.html +0 -0
  6. subir/Curso de C Básico/01-Introducción/01-slides-del-curso-de-c-basico_b86bef99-5598-467a-9d40-36b44adfd1ae.pdf +3 -0
  7. subir/Curso de C Básico/02-Entorno de desarrollo/01-Lecturas recomendadas.txt +3 -0
  8. subir/Curso de C Básico/02-Entorno de desarrollo/01-Proceso de compilación en C paso a paso.mp4 +3 -0
  9. subir/Curso de C Básico/02-Entorno de desarrollo/01-Proceso de compilación en C paso a paso.vtt +259 -0
  10. subir/Curso de C Básico/02-Entorno de desarrollo/01-Resumen.html +0 -0
  11. subir/Curso de C Básico/02-Entorno de desarrollo/02-Instalación del compilador C en Windows usando MinGW.mhtml +0 -0
  12. subir/Curso de C Básico/02-Entorno de desarrollo/03-Instalación de C y configuración en Linux y Visual Studio Code.mhtml +0 -0
  13. subir/Curso de C Básico/02-Entorno de desarrollo/04-Instalación de Xcode y extensiones C en VSCode.mhtml +0 -0
  14. subir/Curso de C Básico/03-Conceptos básicos/01-Lecturas recomendadas.txt +3 -0
  15. subir/Curso de C Básico/03-Conceptos básicos/01-Primer Programa Hola Mundo en C Estructura y Ejecución Básica.mp4 +3 -0
  16. subir/Curso de C Básico/03-Conceptos básicos/01-Primer Programa Hola Mundo en C Estructura y Ejecución Básica.vtt +355 -0
  17. subir/Curso de C Básico/03-Conceptos básicos/01-Resumen.html +0 -0
  18. subir/Curso de C Básico/03-Conceptos básicos/01-estructura-base.zip +3 -0
  19. subir/Curso de C Básico/03-Conceptos básicos/02-Resumen.html +0 -0
  20. subir/Curso de C Básico/03-Conceptos básicos/02-Tipos de Datos en C Booleanos Enteros Flotantes y Caracteres.mp4 +3 -0
  21. subir/Curso de C Básico/03-Conceptos básicos/02-Tipos de Datos en C Booleanos Enteros Flotantes y Caracteres.vtt +403 -0
  22. subir/Curso de C Básico/03-Conceptos básicos/03-Creación y Uso de Variables en C.mp4 +3 -0
  23. subir/Curso de C Básico/03-Conceptos básicos/03-Creación y Uso de Variables en C.vtt +340 -0
  24. subir/Curso de C Básico/03-Conceptos básicos/03-Lecturas recomendadas.txt +1 -0
  25. subir/Curso de C Básico/03-Conceptos básicos/03-Resumen.html +0 -0
  26. subir/Curso de C Básico/03-Conceptos básicos/03-variables.zip +3 -0
  27. subir/Curso de C Básico/03-Conceptos básicos/04-Constantes y Listas en C Uso y Manipulación Básica.mp4 +3 -0
  28. subir/Curso de C Básico/03-Conceptos básicos/04-Constantes y Listas en C Uso y Manipulación Básica.vtt +676 -0
  29. subir/Curso de C Básico/03-Conceptos básicos/04-Lecturas recomendadas.txt +2 -0
  30. subir/Curso de C Básico/03-Conceptos básicos/04-Resumen.html +0 -0
  31. subir/Curso de C Básico/03-Conceptos básicos/04-constantes-listas.zip +3 -0
  32. subir/Curso de C Básico/03-Conceptos básicos/05-Lecturas recomendadas.txt +1 -0
  33. subir/Curso de C Básico/03-Conceptos básicos/05-Operadores en C Aritméticos Comparativos y Lógicos.mp4 +3 -0
  34. subir/Curso de C Básico/03-Conceptos básicos/05-Operadores en C Aritméticos Comparativos y Lógicos.vtt +799 -0
  35. subir/Curso de C Básico/03-Conceptos básicos/05-Resumen.html +0 -0
  36. subir/Curso de C Básico/03-Conceptos básicos/05-operadores.zip +3 -0
  37. subir/Curso de C Básico/03-Conceptos básicos/06-Manejo de Entrada y Salida de Datos con IOStream en C.mp4 +3 -0
  38. subir/Curso de C Básico/03-Conceptos básicos/06-Manejo de Entrada y Salida de Datos con IOStream en C.vtt +418 -0
  39. subir/Curso de C Básico/03-Conceptos básicos/06-entrada-salida-datos.zip +3 -0
  40. subir/Curso de C Básico/presentation.mhtml +0 -0
  41. subir/Curso de Funciones en C/03-Bibliotecas estándar de funciones/04-Lecturas recomendadas.txt +2 -0
  42. subir/Curso de Funciones en C/03-Bibliotecas estándar de funciones/04-Resumen.html +0 -0
  43. subir/Curso de Funciones en C/03-Bibliotecas estándar de funciones/05-Conversión de Decimal a Binario en C usando Ciclo For y Arrays.mp4 +3 -0
  44. subir/Curso de Funciones en C/03-Bibliotecas estándar de funciones/05-Conversión de Decimal a Binario en C usando Ciclo For y Arrays.vtt +989 -0
  45. subir/Curso de Funciones en C/03-Bibliotecas estándar de funciones/05-Lecturas recomendadas.txt +2 -0
  46. subir/Curso de Funciones en C/03-Bibliotecas estándar de funciones/05-Resumen.html +0 -0
  47. subir/Curso de Funciones en C/03-Bibliotecas estándar de funciones/05-decimaltobinary_fe30b38b-6b12-47d7-913b-ea0e08976f1a.c +33 -0
  48. subir/Curso de Funciones en C/04-Cierre/01-Funciones Avanzadas en C Creación y Uso Práctico.mp4 +3 -0
  49. subir/Curso de Funciones en C/04-Cierre/01-Funciones Avanzadas en C Creación y Uso Práctico.vtt +108 -0
  50. subir/Curso de Funciones en C/04-Cierre/01-Lecturas recomendadas.txt +2 -0
.gitattributes CHANGED
@@ -129,3 +129,14 @@ subir/Curso[[:space:]]de[[:space:]]Funciones[[:space:]]en[[:space:]]C/03-Bibliot
129
  subir/Curso[[:space:]]de[[:space:]]Funciones[[:space:]]en[[:space:]]C/03-Bibliotecas[[:space:]]estándar[[:space:]]de[[:space:]]funciones/02-Funciones[[:space:]]matemáticas[[:space:]]básicas[[:space:]]en[[:space:]]C[[:space:]]con[[:space:]]la[[:space:]]biblioteca[[:space:]]math.mp4 filter=lfs diff=lfs merge=lfs -text
130
  subir/Curso[[:space:]]de[[:space:]]Funciones[[:space:]]en[[:space:]]C/03-Bibliotecas[[:space:]]estándar[[:space:]]de[[:space:]]funciones/03-Manejo[[:space:]]de[[:space:]]Strings[[:space:]]en[[:space:]]C[[:space:]]Funciones[[:space:]]y[[:space:]]Operaciones[[:space:]]Básicas.mp4 filter=lfs diff=lfs merge=lfs -text
131
  subir/Curso[[:space:]]de[[:space:]]Funciones[[:space:]]en[[:space:]]C/03-Bibliotecas[[:space:]]estándar[[:space:]]de[[:space:]]funciones/04-Manejo[[:space:]]de[[:space:]]tiempo[[:space:]]en[[:space:]]C[[:space:]]con[[:space:]]la[[:space:]]biblioteca[[:space:]]timeh.mp4 filter=lfs diff=lfs merge=lfs -text
 
 
 
 
 
 
 
 
 
 
 
 
129
  subir/Curso[[:space:]]de[[:space:]]Funciones[[:space:]]en[[:space:]]C/03-Bibliotecas[[:space:]]estándar[[:space:]]de[[:space:]]funciones/02-Funciones[[:space:]]matemáticas[[:space:]]básicas[[:space:]]en[[:space:]]C[[:space:]]con[[:space:]]la[[:space:]]biblioteca[[:space:]]math.mp4 filter=lfs diff=lfs merge=lfs -text
130
  subir/Curso[[:space:]]de[[:space:]]Funciones[[:space:]]en[[:space:]]C/03-Bibliotecas[[:space:]]estándar[[:space:]]de[[:space:]]funciones/03-Manejo[[:space:]]de[[:space:]]Strings[[:space:]]en[[:space:]]C[[:space:]]Funciones[[:space:]]y[[:space:]]Operaciones[[:space:]]Básicas.mp4 filter=lfs diff=lfs merge=lfs -text
131
  subir/Curso[[:space:]]de[[:space:]]Funciones[[:space:]]en[[:space:]]C/03-Bibliotecas[[:space:]]estándar[[:space:]]de[[:space:]]funciones/04-Manejo[[:space:]]de[[:space:]]tiempo[[:space:]]en[[:space:]]C[[:space:]]con[[:space:]]la[[:space:]]biblioteca[[:space:]]timeh.mp4 filter=lfs diff=lfs merge=lfs -text
132
+ subir/Curso[[:space:]]de[[:space:]]Funciones[[:space:]]en[[:space:]]C/03-Bibliotecas[[:space:]]estándar[[:space:]]de[[:space:]]funciones/05-Conversión[[:space:]]de[[:space:]]Decimal[[:space:]]a[[:space:]]Binario[[:space:]]en[[:space:]]C[[:space:]]usando[[:space:]]Ciclo[[:space:]]For[[:space:]]y[[:space:]]Arrays.mp4 filter=lfs diff=lfs merge=lfs -text
133
+ subir/Curso[[:space:]]de[[:space:]]Funciones[[:space:]]en[[:space:]]C/04-Cierre/01-Funciones[[:space:]]Avanzadas[[:space:]]en[[:space:]]C[[:space:]]Creación[[:space:]]y[[:space:]]Uso[[:space:]]Práctico.mp4 filter=lfs diff=lfs merge=lfs -text
134
+ subir/Curso[[:space:]]de[[:space:]]C[[:space:]]Básico/01-Introducción/01-Historia[[:space:]]y[[:space:]]evolución[[:space:]]del[[:space:]]lenguaje[[:space:]]C[[:space:]]y[[:space:]]C.mp4 filter=lfs diff=lfs merge=lfs -text
135
+ subir/Curso[[:space:]]de[[:space:]]C[[:space:]]Básico/01-Introducción/01-slides-del-curso-de-c-basico_b86bef99-5598-467a-9d40-36b44adfd1ae.pdf filter=lfs diff=lfs merge=lfs -text
136
+ subir/Curso[[:space:]]de[[:space:]]C[[:space:]]Básico/02-Entorno[[:space:]]de[[:space:]]desarrollo/01-Proceso[[:space:]]de[[:space:]]compilación[[:space:]]en[[:space:]]C[[:space:]]paso[[:space:]]a[[:space:]]paso.mp4 filter=lfs diff=lfs merge=lfs -text
137
+ subir/Curso[[:space:]]de[[:space:]]C[[:space:]]Básico/03-Conceptos[[:space:]]básicos/01-Primer[[:space:]]Programa[[:space:]]Hola[[:space:]]Mundo[[:space:]]en[[:space:]]C[[:space:]]Estructura[[:space:]]y[[:space:]]Ejecución[[:space:]]Básica.mp4 filter=lfs diff=lfs merge=lfs -text
138
+ subir/Curso[[:space:]]de[[:space:]]C[[:space:]]Básico/03-Conceptos[[:space:]]básicos/02-Tipos[[:space:]]de[[:space:]]Datos[[:space:]]en[[:space:]]C[[:space:]]Booleanos[[:space:]]Enteros[[:space:]]Flotantes[[:space:]]y[[:space:]]Caracteres.mp4 filter=lfs diff=lfs merge=lfs -text
139
+ subir/Curso[[:space:]]de[[:space:]]C[[:space:]]Básico/03-Conceptos[[:space:]]básicos/03-Creación[[:space:]]y[[:space:]]Uso[[:space:]]de[[:space:]]Variables[[:space:]]en[[:space:]]C.mp4 filter=lfs diff=lfs merge=lfs -text
140
+ subir/Curso[[:space:]]de[[:space:]]C[[:space:]]Básico/03-Conceptos[[:space:]]básicos/04-Constantes[[:space:]]y[[:space:]]Listas[[:space:]]en[[:space:]]C[[:space:]]Uso[[:space:]]y[[:space:]]Manipulación[[:space:]]Básica.mp4 filter=lfs diff=lfs merge=lfs -text
141
+ subir/Curso[[:space:]]de[[:space:]]C[[:space:]]Básico/03-Conceptos[[:space:]]básicos/05-Operadores[[:space:]]en[[:space:]]C[[:space:]]Aritméticos[[:space:]]Comparativos[[:space:]]y[[:space:]]Lógicos.mp4 filter=lfs diff=lfs merge=lfs -text
142
+ subir/Curso[[:space:]]de[[:space:]]C[[:space:]]Básico/03-Conceptos[[:space:]]básicos/06-Manejo[[:space:]]de[[:space:]]Entrada[[:space:]]y[[:space:]]Salida[[:space:]]de[[:space:]]Datos[[:space:]]con[[:space:]]IOStream[[:space:]]en[[:space:]]C.mp4 filter=lfs diff=lfs merge=lfs -text
subir/Curso de C Básico/01-Introducción/01-Historia y evolución del lenguaje C y C.mp4 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c045ab56f297ff0e6bbb545c75d68ecfcf11b752157b6c66299fbb7d4bf8fe04
3
+ size 40856325
subir/Curso de C Básico/01-Introducción/01-Historia y evolución del lenguaje C y C.vtt ADDED
@@ -0,0 +1,229 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ WEBVTT
2
+
3
+ 00:00:03.040 --> 00:00:04.880
4
+ Bienvenido al curso de programación en C más
5
+
6
+ 00:00:04.880 --> 00:00:06.879
7
+ más básico. Mi nombre es Diana Martínez y
8
+
9
+ 00:00:06.879 --> 00:00:08.820
10
+ voy a ser tu profesora en este curso.
11
+
12
+ 00:00:09.920 --> 00:00:12.320
13
+ Para comenzar, vamos a hablar sobre la historia
14
+
15
+ 00:00:12.320 --> 00:00:14.445
16
+ de C más más, pero no podemos hablar
17
+
18
+ 00:00:14.445 --> 00:00:16.445
19
+ sobre C más más sin hablar primero sobre
20
+
21
+ 00:00:16.445 --> 00:00:19.645
22
+ el lenguaje de programación C. Este lenguaje de
23
+
24
+ 00:00:19.645 --> 00:00:22.365
25
+ programación fue desarrollado por Dennis Richie y su
26
+
27
+ 00:00:22.365 --> 00:00:25.645
28
+ equipo de investigadores en los laboratorios Bell de
29
+
30
+ 00:00:25.645 --> 00:00:28.880
31
+ la AT y T Corporation, mientras desarrollaban el
32
+
33
+ 00:00:28.880 --> 00:00:32.400
34
+ sistema operativo Unix. Fue necesario crear un nuevo
35
+
36
+ 00:00:32.400 --> 00:00:35.360
37
+ lenguaje de programación que les permitiera desarrollar de
38
+
39
+ 00:00:35.360 --> 00:00:38.000
40
+ forma mucho más sencilla su sistema operativo, ya
41
+
42
+ 00:00:38.000 --> 00:00:40.240
43
+ que los lenguajes de la época, en aquel
44
+
45
+ 00:00:40.240 --> 00:00:43.675
46
+ momento, no estaban pensados para tal finalidad. Cuando
47
+
48
+ 00:00:43.675 --> 00:00:46.255
49
+ crearon el lenguaje de programación C, las computadoras
50
+
51
+ 00:00:46.555 --> 00:00:50.075
52
+ estaban en un estado bastante primitivo. Apenas existían
53
+
54
+ 00:00:50.075 --> 00:00:52.635
55
+ las computadoras electrónicas y, en muchos de los
56
+
57
+ 00:00:52.635 --> 00:00:54.715
58
+ casos, ni siquiera se parecían a lo que
59
+
60
+ 00:00:54.715 --> 00:00:57.114
61
+ tenemos hoy en día. Por ejemplo, como puedes
62
+
63
+ 00:00:57.114 --> 00:00:59.550
64
+ ver en la fotografía, las computadoras de aquella
65
+
66
+ 00:00:59.550 --> 00:01:02.750
67
+ época no necesariamente tenían un monitor para mostrar
68
+
69
+ 00:01:02.750 --> 00:01:04.909
70
+ los datos de salida de los resultados de
71
+
72
+ 00:01:04.909 --> 00:01:08.110
73
+ los programas. En lugar de eso, utilizaban papel
74
+
75
+ 00:01:08.110 --> 00:01:10.990
76
+ y tinta para mostrar por medio de una
77
+
78
+ 00:01:10.990 --> 00:01:13.310
79
+ impresora cuáles habían sido de los resultados de
80
+
81
+ 00:01:13.310 --> 00:01:16.555
82
+ salida. Y de la misma manera, se utilizaba
83
+
84
+ 00:01:16.555 --> 00:01:19.195
85
+ un teclado bastante primitivo, muy distinto a los
86
+
87
+ 00:01:19.195 --> 00:01:21.755
88
+ teclados actuales, para realizar la entrada de datos
89
+
90
+ 00:01:21.755 --> 00:01:24.555
91
+ del programa. Sin embargo, ya teníamos esos dos
92
+
93
+ 00:01:24.555 --> 00:01:27.034
94
+ conceptos fundamentales de la entrada y salida de
95
+
96
+ 00:01:27.034 --> 00:01:30.479
97
+ datos utilizando texto. En este caso, por medio
98
+
99
+ 00:01:30.479 --> 00:01:32.320
100
+ de un teclado similar al de una máquina
101
+
102
+ 00:01:32.320 --> 00:01:35.760
103
+ de escribir y una impresora que mostraba los
104
+
105
+ 00:01:35.760 --> 00:01:37.280
106
+ textos de la salida del programa en el
107
+
108
+ 00:01:37.280 --> 00:01:42.400
109
+ papel. Estas dos características fueron bastante importantes para
110
+
111
+ 00:01:42.400 --> 00:01:44.885
112
+ la creación del lenguaje de programación C, ya
113
+
114
+ 00:01:44.885 --> 00:01:47.405
115
+ que cuando se desarrolló, pues, esta era la
116
+
117
+ 00:01:47.405 --> 00:01:52.265
118
+ forma principal de utilizar las computadoras. Más tarde,
119
+
120
+ 00:01:52.965 --> 00:01:56.405
121
+ John Stroustrop desarrolló una nueva versión o una
122
+
123
+ 00:01:56.405 --> 00:01:59.500
124
+ nueva implementación del lenguaje de programación C al
125
+
126
+ 00:01:59.500 --> 00:02:01.659
127
+ que llamó C con clases, ya que le
128
+
129
+ 00:02:01.659 --> 00:02:05.340
130
+ agregó la capacidad de soportar el paradigma orientado
131
+
132
+ 00:02:05.340 --> 00:02:09.039
133
+ a objetos, es decir, la capacidad de generar
134
+
135
+ 00:02:09.500 --> 00:02:12.060
136
+ aplicaciones con un mayor nivel de abstracción que
137
+
138
+ 00:02:12.060 --> 00:02:15.435
139
+ el original del lenguaje de programación C. Para
140
+
141
+ 00:02:15.435 --> 00:02:17.675
142
+ esto, pasaron algunos años antes de que él
143
+
144
+ 00:02:17.675 --> 00:02:19.275
145
+ comenzara a llamar a su nuevo lenguaje de
146
+
147
+ 00:02:19.275 --> 00:02:22.875
148
+ programación C más más. Es importante destacar que
149
+
150
+ 00:02:22.875 --> 00:02:25.915
151
+ para cuando Jans Trotstrap comenzó a desarrollar C
152
+
153
+ 00:02:25.915 --> 00:02:28.040
154
+ más más, ya habían pasado poco más de
155
+
156
+ 00:02:28.040 --> 00:02:31.240
157
+ diez años y la computación había evolucionado bastante
158
+
159
+ 00:02:31.240 --> 00:02:34.300
160
+ desde entonces. Por lo tanto, cuando él desarrolló,
161
+
162
+ 00:02:34.600 --> 00:02:37.420
163
+ ya estaba el concepto de un sistema operativo
164
+
165
+ 00:02:37.480 --> 00:02:40.665
166
+ y de desarrollar aplicaciones sobre él mismo, sin
167
+
168
+ 00:02:40.665 --> 00:02:43.265
169
+ necesidad de entender cómo funcionaba por debajo la
170
+
171
+ 00:02:43.265 --> 00:02:45.905
172
+ computadora a nivel de hardware. Estas son una
173
+
174
+ 00:02:45.905 --> 00:02:49.205
175
+ de las mayores diferencias entre el lenguaje de
176
+
177
+ 00:02:49.265 --> 00:02:51.745
178
+ programación C original y C más más. Sin
179
+
180
+ 00:02:51.745 --> 00:02:55.489
181
+ embargo, muchas de las características de C son
182
+
183
+ 00:02:55.489 --> 00:02:57.410
184
+ heredadas por el lenguaje de programación C más
185
+
186
+ 00:02:57.410 --> 00:03:00.209
187
+ más. La mayor parte de las que veremos
188
+
189
+ 00:03:00.209 --> 00:03:03.090
190
+ en este curso son compatibles con ambos. Por
191
+
192
+ 00:03:03.090 --> 00:03:06.129
193
+ último, me gustaría que vieras, en comparación, cómo
194
+
195
+ 00:03:06.129 --> 00:03:09.895
196
+ evoluciona la computación entre los dos lenguajes de
197
+
198
+ 00:03:09.895 --> 00:03:12.935
199
+ programación. Entre los sesentas y los setentas, cuando
200
+
201
+ 00:03:12.935 --> 00:03:15.255
202
+ Denis Richie y los investigadores de su equipo
203
+
204
+ 00:03:15.255 --> 00:03:19.255
205
+ estuvieron investigando sobre lenguajes de programación y sobre
206
+
207
+ 00:03:19.255 --> 00:03:22.215
208
+ sistemas operativos, y desarrollaron la primera versión de
209
+
210
+ 00:03:22.215 --> 00:03:26.070
211
+ Unix, o los ochentas, cuando GeneStrolStrow tuvo la
212
+
213
+ 00:03:26.070 --> 00:03:28.790
214
+ oportunidad de desarrollar su propia implementación de C
215
+
216
+ 00:03:28.790 --> 00:03:31.910
217
+ más más. Dicho esto, te invito a nuestra
218
+
219
+ 00:03:31.910 --> 00:03:34.890
220
+ siguiente clase, donde hablaremos sobre el entorno desarrollo
221
+
222
+ 00:03:35.030 --> 00:03:38.421
223
+ y el proceso de compilación. Además, realizaremos la
224
+
225
+ 00:03:38.641 --> 00:03:41.201
226
+ instalación de las herramientas necesarias para trabajar con
227
+
228
+ 00:03:41.201 --> 00:03:42.741
229
+ estos lenguajes de programación.
subir/Curso de C Básico/01-Introducción/01-Lecturas recomendadas.txt ADDED
@@ -0,0 +1 @@
 
 
1
+ https://github.com/platzi/curso-basico-c-plus-plus
subir/Curso de C Básico/01-Introducción/01-Resumen.html ADDED
The diff for this file is too large to render. See raw diff
 
subir/Curso de C Básico/01-Introducción/01-slides-del-curso-de-c-basico_b86bef99-5598-467a-9d40-36b44adfd1ae.pdf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:52a78a5b7bc562228d9722303d3ba709ad6b9d3184482748d9082a3cc7e6dcb0
3
+ size 402889
subir/Curso de C Básico/02-Entorno de desarrollo/01-Lecturas recomendadas.txt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ https://platzi.com/cursos/prework-windows/
2
+ https://platzi.com/cursos/prework-macos/
3
+ https://code.visualstudio.com/
subir/Curso de C Básico/02-Entorno de desarrollo/01-Proceso de compilación en C paso a paso.mp4 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:982448a39ed67f5712a51ef30e3db88693369c17e927cb2f2441aff27a1efe09
3
+ size 46131852
subir/Curso de C Básico/02-Entorno de desarrollo/01-Proceso de compilación en C paso a paso.vtt ADDED
@@ -0,0 +1,259 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ WEBVTT
2
+
3
+ 00:00:02.960 --> 00:00:05.040
4
+ Vamos a hablar sobre el proceso de compilación
5
+
6
+ 00:00:05.040 --> 00:00:07.779
7
+ del lenguaje C más más. Como bien sabes,
8
+
9
+ 00:00:08.000 --> 00:00:10.320
10
+ el lenguaje de programación C y el lenguaje
11
+
12
+ 00:00:10.320 --> 00:00:12.980
13
+ de programación C más más son lenguajes compilados,
14
+
15
+ 00:00:13.120 --> 00:00:15.875
16
+ es decir, requieren de un programa compilador que
17
+
18
+ 00:00:15.875 --> 00:00:18.135
19
+ convierta el código fuente que vas a escribir
20
+
21
+ 00:00:18.275 --> 00:00:21.155
22
+ durante el proceso de programación y generen un
23
+
24
+ 00:00:21.155 --> 00:00:22.835
25
+ archivo ejecutable, que es el que le vas
26
+
27
+ 00:00:22.835 --> 00:00:25.635
28
+ a entregar a tus usuarios. El proceso de
29
+
30
+ 00:00:25.635 --> 00:00:29.340
31
+ compilación es el siguiente. En primer lugar, vas
32
+
33
+ 00:00:29.340 --> 00:00:31.260
34
+ a escribir el código fuente en un editor
35
+
36
+ 00:00:31.260 --> 00:00:33.980
37
+ de código o IDE. Este es tu entorno
38
+
39
+ 00:00:33.980 --> 00:00:36.800
40
+ de desarrollo integrado o el editor de código
41
+
42
+ 00:00:36.860 --> 00:00:39.660
43
+ de tu preferencia, donde vas a escribir código
44
+
45
+ 00:00:39.660 --> 00:00:42.095
46
+ en C más más. Ahí vas a generar
47
+
48
+ 00:00:42.095 --> 00:00:44.415
49
+ archivos de código fuente que pueden tener la
50
+
51
+ 00:00:44.415 --> 00:00:47.155
52
+ extensión punto h o la extensión punto CVP.
53
+
54
+ 00:00:47.455 --> 00:00:50.035
55
+ Esto le va a indicar a tu preprocesador
56
+
57
+ 00:00:50.655 --> 00:00:52.415
58
+ que estos son los archivos de código fuente
59
+
60
+ 00:00:52.415 --> 00:00:55.680
61
+ que va a utilizar más adelante. El paso
62
+
63
+ 00:00:55.680 --> 00:00:59.440
64
+ dos es el preprocesamiento, y aquí se ejecuta
65
+
66
+ 00:00:59.440 --> 00:01:02.320
67
+ un pequeño programa conocido como el preprocesador, que
68
+
69
+ 00:01:02.320 --> 00:01:05.200
70
+ se encarga de tomar los diferentes archivos de
71
+
72
+ 00:01:05.200 --> 00:01:08.160
73
+ código fuente que están en texto plano, justo
74
+
75
+ 00:01:08.160 --> 00:01:11.755
76
+ como tú los habías escrito, para ser utilizados
77
+
78
+ 00:01:12.135 --> 00:01:15.095
79
+ por el preprocesador, de forma que este los
80
+
81
+ 00:01:15.095 --> 00:01:17.575
82
+ pueda juntar en un único archivo o en
83
+
84
+ 00:01:17.575 --> 00:01:20.875
85
+ los archivos necesarios para realizar los pasos posteriores.
86
+
87
+ 00:01:22.450 --> 00:01:25.570
88
+ A continuación, sucedería el paso tres, que es
89
+
90
+ 00:01:25.570 --> 00:01:28.930
91
+ el proceso de compilación. El compilador es el
92
+
93
+ 00:01:28.930 --> 00:01:30.930
94
+ programa que realiza la mayor parte de la
95
+
96
+ 00:01:30.930 --> 00:01:33.890
97
+ magia durante este proceso, y se trata de
98
+
99
+ 00:01:33.890 --> 00:01:35.650
100
+ un programa que va a tomar el código
101
+
102
+ 00:01:35.650 --> 00:01:37.435
103
+ fuente que tú hayas escrito y lo va
104
+
105
+ 00:01:37.435 --> 00:01:41.055
106
+ a convertir en un código objeto. Este código
107
+
108
+ 00:01:41.515 --> 00:01:43.275
109
+ objeto es un código que ya está mucho
110
+
111
+ 00:01:43.275 --> 00:01:45.775
112
+ más cercano a lo que la máquina necesita
113
+
114
+ 00:01:46.075 --> 00:01:48.075
115
+ para interpretar, es un código que ya no
116
+
117
+ 00:01:48.075 --> 00:01:49.915
118
+ es legible para un ser humano de una
119
+
120
+ 00:01:49.915 --> 00:01:52.495
121
+ forma sencilla, como lo es el código fuente.
122
+
123
+ 00:01:53.680 --> 00:01:57.920
124
+ El paso número cuatro sería el linker. Este
125
+
126
+ 00:01:57.920 --> 00:02:00.159
127
+ programa se va a encargar de juntar tu
128
+
129
+ 00:02:00.159 --> 00:02:03.039
130
+ código fuente después de haber sido procesado y
131
+
132
+ 00:02:03.039 --> 00:02:08.095
133
+ compilado en código objeto con las librerías o
134
+
135
+ 00:02:08.095 --> 00:02:11.135
136
+ dependencias que tú hayas indicado que necesita tu
137
+
138
+ 00:02:11.135 --> 00:02:16.675
139
+ programa durante el proceso de linkkeado. A continuación,
140
+
141
+ 00:02:16.855 --> 00:02:20.660
142
+ ya durante la ejecución del programa, se realizaría
143
+
144
+ 00:02:21.200 --> 00:02:23.880
145
+ el paso número cinco, que es la carga,
146
+
147
+ 00:02:23.880 --> 00:02:26.240
148
+ y esto es realizado por el loader. El
149
+
150
+ 00:02:26.240 --> 00:02:29.760
151
+ loader es un pequeño programa que arranca la
152
+
153
+ 00:02:29.760 --> 00:02:31.780
154
+ ejecución de tu código en C más más
155
+
156
+ 00:02:31.785 --> 00:02:33.385
157
+ y que va a importar todas aquellas librerías
158
+
159
+ 00:02:33.385 --> 00:02:37.645
160
+ que tú hayas indicado que pueden ser obtenidas
161
+
162
+ 00:02:37.785 --> 00:02:40.685
163
+ de forma dinámica, es decir, que no necesariamente
164
+
165
+ 00:02:41.465 --> 00:02:44.280
166
+ necesitan incluirse dentro del ejecutable de tu programa,
167
+
168
+ 00:02:44.360 --> 00:02:46.520
169
+ sino que pueden ya estar instaladas en el
170
+
171
+ 00:02:46.520 --> 00:02:49.980
172
+ sistema operativo destino para que este pueda invocarlas,
173
+
174
+ 00:02:50.520 --> 00:02:53.880
175
+ como comunicarse con otros programas y depender de
176
+
177
+ 00:02:53.880 --> 00:02:57.800
178
+ ellas, pero de una forma dinámica. Y el
179
+
180
+ 00:02:57.800 --> 00:03:01.695
181
+ último paso sería la ejecución. Aquí nuestro programa
182
+
183
+ 00:03:01.695 --> 00:03:03.455
184
+ va a ser montado en la memoria y
185
+
186
+ 00:03:03.455 --> 00:03:06.755
187
+ va a poder acceder y ejecutar sus instrucciones
188
+
189
+ 00:03:06.815 --> 00:03:09.535
190
+ una tras otra en nuestra CPU, donde va
191
+
192
+ 00:03:09.535 --> 00:03:11.695
193
+ a poder recibir los datos de entrada y
194
+
195
+ 00:03:11.695 --> 00:03:14.100
196
+ generar los datos de salida. Ahora que ya
197
+
198
+ 00:03:14.100 --> 00:03:16.020
199
+ sabes cómo es el proceso de compilación de
200
+
201
+ 00:03:16.020 --> 00:03:18.200
202
+ C más más, sabes que vamos a necesitar
203
+
204
+ 00:03:18.340 --> 00:03:21.080
205
+ dos herramientas principales para trabajar con este curso.
206
+
207
+ 00:03:21.220 --> 00:03:23.940
208
+ La primera es nuestro editor de código. En
209
+
210
+ 00:03:23.940 --> 00:03:26.500
211
+ este curso vamos a estar utilizando Visual Studio
212
+
213
+ 00:03:26.500 --> 00:03:29.135
214
+ Code, que tú ya deberías tener instalado. Si
215
+
216
+ 00:03:29.135 --> 00:03:31.535
217
+ no lo tienes instalado, te invito a realizar
218
+
219
+ 00:03:31.535 --> 00:03:33.795
220
+ el curso de prework de Platzi, donde aprenderás
221
+
222
+ 00:03:34.335 --> 00:03:37.375
223
+ todos los pasos necesarios para su instalación. La
224
+
225
+ 00:03:37.375 --> 00:03:41.055
226
+ segunda será nuestro compilador. En este caso, vamos
227
+
228
+ 00:03:41.055 --> 00:03:44.300
229
+ a estar utilizando la herramienta de compilación GCC,
230
+
231
+ 00:03:44.300 --> 00:03:47.660
232
+ de código de código libre, que, en el
233
+
234
+ 00:03:47.660 --> 00:03:50.400
235
+ caso de los sistemas operativos Linux, ya viene
236
+
237
+ 00:03:50.540 --> 00:03:52.380
238
+ instalado, así que no necesitarás realizar nada más
239
+
240
+ 00:03:52.380 --> 00:03:55.820
241
+ que instalar tu editor de código. Y, en
242
+
243
+ 00:03:55.820 --> 00:03:58.380
244
+ el caso de los sistemas operativos Windows y
245
+
246
+ 00:03:58.380 --> 00:04:01.505
247
+ Mac, te dejaremos dos lecciones en texto donde
248
+
249
+ 00:04:01.505 --> 00:04:04.145
250
+ aprenderás cómo realizar la instalación para tu sistema
251
+
252
+ 00:04:04.145 --> 00:04:07.505
253
+ operativo. Te invito a la siguiente clase, donde
254
+
255
+ 00:04:07.505 --> 00:04:10.565
256
+ por primera vez comenzaremos a realizar nuestro código
257
+
258
+ 00:04:11.185 --> 00:04:12.325
259
+ con C más más.
subir/Curso de C Básico/02-Entorno de desarrollo/01-Resumen.html ADDED
The diff for this file is too large to render. See raw diff
 
subir/Curso de C Básico/02-Entorno de desarrollo/02-Instalación del compilador C en Windows usando MinGW.mhtml ADDED
The diff for this file is too large to render. See raw diff
 
subir/Curso de C Básico/02-Entorno de desarrollo/03-Instalación de C y configuración en Linux y Visual Studio Code.mhtml ADDED
The diff for this file is too large to render. See raw diff
 
subir/Curso de C Básico/02-Entorno de desarrollo/04-Instalación de Xcode y extensiones C en VSCode.mhtml ADDED
The diff for this file is too large to render. See raw diff
 
subir/Curso de C Básico/03-Conceptos básicos/01-Lecturas recomendadas.txt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ https://github.com/platzi/curso-basico-c-plus-plus/tree/estructura-base
2
+ https://marketplace.visualstudio.com/items?itemName=danielpinto8zz6.c-cpp-compile-run
3
+ https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools
subir/Curso de C Básico/03-Conceptos básicos/01-Primer Programa Hola Mundo en C Estructura y Ejecución Básica.mp4 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:2ea5b51ad8c43d8299610a6dac0571add4b179e0f73b95fa4878f33c79202394
3
+ size 64130542
subir/Curso de C Básico/03-Conceptos básicos/01-Primer Programa Hola Mundo en C Estructura y Ejecución Básica.vtt ADDED
@@ -0,0 +1,355 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ WEBVTT
2
+
3
+ 00:00:03.199 --> 00:00:05.600
4
+ Por fin, vamos a realizar nuestro primer ejemplo
5
+
6
+ 00:00:05.600 --> 00:00:08.639
7
+ de código en este curso. Vamos a hablar
8
+
9
+ 00:00:08.639 --> 00:00:11.219
10
+ sobre nuestro hola mundo y la estructura básica
11
+
12
+ 00:00:11.280 --> 00:00:13.674
13
+ de un programa en C más más. Ahora
14
+
15
+ 00:00:13.674 --> 00:00:15.514
16
+ que ya estamos en nuestro editor de código,
17
+
18
+ 00:00:15.514 --> 00:00:18.154
19
+ voy a crear un archivo donde voy a
20
+
21
+ 00:00:18.154 --> 00:00:21.775
22
+ generar todo el código fuente de mi programa
23
+
24
+ 00:00:21.835 --> 00:00:24.395
25
+ de Hola Mundo. Este archivo lo voy a
26
+
27
+ 00:00:24.395 --> 00:00:26.154
28
+ guardar en una carpeta que yo ya creé
29
+
30
+ 00:00:26.154 --> 00:00:28.410
31
+ para las clases. Tú lo puedes crear en
32
+
33
+ 00:00:28.410 --> 00:00:32.409
34
+ cualquier carpeta limpia que tú necesites trabajar de
35
+
36
+ 00:00:32.409 --> 00:00:34.270
37
+ la forma en que te convenga más organizarlo.
38
+
39
+ 00:00:34.730 --> 00:00:36.750
40
+ Vamos a dejarte el código en unos repositorios
41
+
42
+ 00:00:37.050 --> 00:00:39.550
43
+ de Github para que puedas tenerlo de referencia.
44
+
45
+ 00:00:41.505 --> 00:00:44.045
46
+ En este caso, vamos a comenzar a programar
47
+
48
+ 00:00:44.065 --> 00:00:48.145
49
+ nuestro archivo llamado, siempre con una extensión punto
50
+
51
+ 00:00:48.145 --> 00:00:50.545
52
+ CPP. Yo le voy a poner main punto
53
+
54
+ 00:00:50.545 --> 00:00:52.945
55
+ CPP para mantener ese estándar a lo largo
56
+
57
+ 00:00:52.945 --> 00:00:56.690
58
+ de todos los ejemplos de este curso. Por
59
+
60
+ 00:00:56.690 --> 00:00:58.530
61
+ lo tanto, aquí en esta carpeta voy a
62
+
63
+ 00:00:58.530 --> 00:01:00.449
64
+ empezar a escribir el nombre del archivo main
65
+
66
+ 00:01:00.449 --> 00:01:05.170
67
+ punto CPY ahora sí, ya tengo creado mi
68
+
69
+ 00:01:05.170 --> 00:01:07.509
70
+ archivo de código fuente de c más más.
71
+
72
+ 00:01:09.174 --> 00:01:11.354
73
+ Con esto puedo comenzar a escribir el código
74
+
75
+ 00:01:11.735 --> 00:01:15.515
76
+ que necesite para realizar mi programa. Por ejemplo,
77
+
78
+ 00:01:15.814 --> 00:01:20.314
79
+ voy a realizar esta instrucción que se conoce
80
+
81
+ 00:01:20.615 --> 00:01:22.650
82
+ como include, que lo que me permite es
83
+
84
+ 00:01:22.650 --> 00:01:26.170
85
+ incluir o importar una librería de código que
86
+
87
+ 00:01:26.170 --> 00:01:29.450
88
+ contiene funcionalidades necesarias que yo pueda llegar a
89
+
90
+ 00:01:29.450 --> 00:01:32.250
91
+ utilizar. Por ejemplo, voy a utilizar una que
92
+
93
+ 00:01:32.250 --> 00:01:36.535
94
+ se llama iostream. Esta librería me permite obtener
95
+
96
+ 00:01:36.535 --> 00:01:39.015
97
+ datos de entrada del programa o mostrar datos
98
+
99
+ 00:01:39.015 --> 00:01:40.935
100
+ de salida por medio de la terminal de
101
+
102
+ 00:01:40.935 --> 00:01:45.195
103
+ comandos, y eso va a ser posible también
104
+
105
+ 00:01:45.495 --> 00:01:47.495
106
+ gracias a otra línea de código que siempre
107
+
108
+ 00:01:47.495 --> 00:01:50.340
109
+ vamos a poner en nuestros programas, ya veremos
110
+
111
+ 00:01:50.340 --> 00:01:56.039
112
+ después por qué, que se llama usync namespace
113
+
114
+ 00:01:57.860 --> 00:02:02.439
115
+ std. Esta línea lo que hace es permitirnos
116
+
117
+ 00:02:02.659 --> 00:02:04.740
118
+ utilizar el espacio de nombres estándar de C
119
+
120
+ 00:02:04.740 --> 00:02:07.175
121
+ más más, es decir, todas esas cosas que
122
+
123
+ 00:02:07.175 --> 00:02:09.175
124
+ tienen un nombre dentro de nuestro programa, que
125
+
126
+ 00:02:09.175 --> 00:02:13.415
127
+ pueden ser piezas de código reutilizables para poder
128
+
129
+ 00:02:13.415 --> 00:02:16.455
130
+ importarlas sin necesidad de escribir desde dónde las
131
+
132
+ 00:02:16.455 --> 00:02:20.120
133
+ estamos importando y aún así poder utilizarlas. Por
134
+
135
+ 00:02:20.660 --> 00:02:25.220
136
+ ejemplo, vamos a crear un código que es
137
+
138
+ 00:02:25.220 --> 00:02:29.000
139
+ esta estructura básica, que es la estructura básica
140
+
141
+ 00:02:29.300 --> 00:02:31.300
142
+ de cualquier programa en C más más, siempre
143
+
144
+ 00:02:31.300 --> 00:02:33.075
145
+ que queremos un programa en C más más
146
+
147
+ 00:02:33.155 --> 00:02:34.995
148
+ o en el lenguaje de programación C, vamos
149
+
150
+ 00:02:34.995 --> 00:02:36.834
151
+ a tener que escribir esta línea de código
152
+
153
+ 00:02:36.834 --> 00:02:38.754
154
+ que aparece aquí en la línea cinco de
155
+
156
+ 00:02:38.754 --> 00:02:42.355
157
+ nuestro editor, que es la función main. Más
158
+
159
+ 00:02:42.355 --> 00:02:44.355
160
+ adelante vamos a hablar sobre las funciones y
161
+
162
+ 00:02:44.355 --> 00:02:46.680
163
+ sobre por qué tienen esta estructura, pero, de
164
+
165
+ 00:02:46.680 --> 00:02:49.580
166
+ momento, me gustaría que sepas que todos los
167
+
168
+ 00:02:49.720 --> 00:02:52.680
169
+ programas comienzan por donde esté la función main,
170
+
171
+ 00:02:52.680 --> 00:02:55.720
172
+ es decir, si queremos arrancar un programa de
173
+
174
+ 00:02:55.720 --> 00:02:57.640
175
+ editor de video o un programa de editor
176
+
177
+ 00:02:57.640 --> 00:03:00.225
178
+ de audio, cualquier tipo de programa que que
179
+
180
+ 00:03:00.765 --> 00:03:03.005
181
+ realicemos en C más más siempre lo que
182
+
183
+ 00:03:03.005 --> 00:03:05.165
184
+ coloquemos dentro de la función main es lo
185
+
186
+ 00:03:05.165 --> 00:03:06.685
187
+ primero que se va a ejecutar de nuestro
188
+
189
+ 00:03:06.685 --> 00:03:10.865
190
+ programa. Es conocido como el punto de entrada.
191
+
192
+ 00:03:11.940 --> 00:03:14.659
193
+ Dentro de la función main, podemos escribir cualquier
194
+
195
+ 00:03:14.659 --> 00:03:16.920
196
+ cantidad de código que queremos que se ejecute
197
+
198
+ 00:03:16.980 --> 00:03:19.620
199
+ una vez arranque nuestro programa. En este caso,
200
+
201
+ 00:03:19.620 --> 00:03:21.780
202
+ vamos a escribir un texto que nos va
203
+
204
+ 00:03:21.780 --> 00:03:24.585
205
+ a decir hola mundo. La forma en que
206
+
207
+ 00:03:24.585 --> 00:03:26.985
208
+ lo vamos a hacer es utilizando una funcionalidad
209
+
210
+ 00:03:26.985 --> 00:03:30.505
211
+ que nos ofrece la librería iOStream, que es
212
+
213
+ 00:03:30.505 --> 00:03:37.730
214
+ utilizar c out. C out y utilizar estos
215
+
216
+ 00:03:37.790 --> 00:03:41.490
217
+ pequeños símbolos de menor que dos veces, nos
218
+
219
+ 00:03:41.870 --> 00:03:44.370
220
+ permitirán escribir a continuación una cadena de texto
221
+
222
+ 00:03:44.590 --> 00:03:48.030
223
+ que puede contener cualquier texto que queramos. La
224
+
225
+ 00:03:48.030 --> 00:03:51.160
226
+ única condición es que debe ir entre comillas
227
+
228
+ 00:03:51.160 --> 00:03:53.765
229
+ dobles, de esta forma. Por ejemplo, si yo
230
+
231
+ 00:03:53.765 --> 00:03:55.925
232
+ quiero hacer mi programa de hola mundo, puedo
233
+
234
+ 00:03:55.925 --> 00:04:02.644
235
+ poner hola mundo. Y una vez que termino
236
+
237
+ 00:04:02.644 --> 00:04:05.140
238
+ de darle esta instrucción a mi programa, en
239
+
240
+ 00:04:05.140 --> 00:04:07.300
241
+ el lenguaje de programación C y en los
242
+
243
+ 00:04:07.300 --> 00:04:10.580
244
+ lenguajes que siguen al lenguaje programación C, como
245
+
246
+ 00:04:10.580 --> 00:04:13.379
247
+ C más más, siempre, cada vez que terminamos
248
+
249
+ 00:04:13.379 --> 00:04:15.220
250
+ de darle una orden a nuestro a nuestra
251
+
252
+ 00:04:15.220 --> 00:04:17.160
253
+ computadora por medio de una línea de código,
254
+
255
+ 00:04:17.300 --> 00:04:19.794
256
+ debemos terminar con un punto y coma. Si
257
+
258
+ 00:04:19.794 --> 00:04:21.794
259
+ te das cuenta, la línea tres y la
260
+
261
+ 00:04:21.794 --> 00:04:24.275
262
+ línea seis de nuestro editor de código terminan
263
+
264
+ 00:04:24.275 --> 00:04:25.955
265
+ en punto y coma, porque le están dando
266
+
267
+ 00:04:25.955 --> 00:04:29.794
268
+ una orden a la computadora. Las líneas cinco,
269
+
270
+ 00:04:29.794 --> 00:04:32.194
271
+ la siete y la uno no necesitan un
272
+
273
+ 00:04:32.194 --> 00:04:34.060
274
+ punto y coma, ya que estas no son
275
+
276
+ 00:04:34.060 --> 00:04:36.000
277
+ órdenes directas que le damos a la computadora.
278
+
279
+ 00:04:38.380 --> 00:04:40.300
280
+ Una vez que tenemos armado nuestro ejemplo de
281
+
282
+ 00:04:40.300 --> 00:04:43.340
283
+ hola mundo, vamos a ejecutarlo. La forma fácil
284
+
285
+ 00:04:43.340 --> 00:04:46.380
286
+ de hacerlo dentro de Visual Studio Code es
287
+
288
+ 00:04:46.380 --> 00:04:49.435
289
+ instalando esta extensión que se llama C C
290
+
291
+ 00:04:49.435 --> 00:04:55.375
292
+ más más Compile Run. La voy a instalar
293
+
294
+ 00:04:55.435 --> 00:04:57.535
295
+ simplemente haciendo clic en el botón de instalación
296
+
297
+ 00:04:58.075 --> 00:05:00.095
298
+ y, una vez que yo la tengo lista,
299
+
300
+ 00:05:00.155 --> 00:05:03.320
301
+ ya está instalada. Como aquí dice en la
302
+
303
+ 00:05:03.320 --> 00:05:07.080
304
+ documentación, podemos utilizar la tecla f seis para
305
+
306
+ 00:05:07.080 --> 00:05:09.639
307
+ realizar la compilación de este programa y ver
308
+
309
+ 00:05:09.639 --> 00:05:12.120
310
+ el resultado. Y es lo que voy a
311
+
312
+ 00:05:12.120 --> 00:05:16.540
313
+ hacer a continuación. Aquí está, voy a oprimir
314
+
315
+ 00:05:16.760 --> 00:05:19.525
316
+ f seis, y en este momento se está
317
+
318
+ 00:05:19.525 --> 00:05:22.965
319
+ compilando nuestro programa y se ejecuta una vez
320
+
321
+ 00:05:22.965 --> 00:05:25.685
322
+ que termina de compilar. Lo que nos muestra
323
+
324
+ 00:05:25.685 --> 00:05:29.285
325
+ en la terminal es hola mundo. Felicidades, ya
326
+
327
+ 00:05:29.285 --> 00:05:31.045
328
+ realizaste tu primer hola mundo en C más
329
+
330
+ 00:05:31.045 --> 00:05:33.830
331
+ más. Este es el programa mínimo que puedes
332
+
333
+ 00:05:33.830 --> 00:05:37.110
334
+ escribir en este lenguaje de programación, y esta
335
+
336
+ 00:05:37.110 --> 00:05:38.870
337
+ misma base de código la vamos a estar
338
+
339
+ 00:05:38.870 --> 00:05:40.950
340
+ utilizando para el resto de los ejemplos que
341
+
342
+ 00:05:40.950 --> 00:05:43.578
343
+ vamos a realizar en este curso. Espero que
344
+
345
+ 00:05:43.578 --> 00:05:45.898
346
+ te haya gustado muchísimo la forma en que
347
+
348
+ 00:05:45.898 --> 00:05:47.418
349
+ funciona C más Más y que te haya
350
+
351
+ 00:05:47.418 --> 00:05:50.478
352
+ causado muchísima curiosidad para que puedas seguirlo aprendiendo.
353
+
354
+ 00:05:50.618 --> 00:05:52.478
355
+ Nos vemos en la próxima clase.
subir/Curso de C Básico/03-Conceptos básicos/01-Resumen.html ADDED
The diff for this file is too large to render. See raw diff
 
subir/Curso de C Básico/03-Conceptos básicos/01-estructura-base.zip ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:49b8e1f9b376795219a7bfd1e65e094fc651232e961ef6d526bfc19d11f0271f
3
+ size 757
subir/Curso de C Básico/03-Conceptos básicos/02-Resumen.html ADDED
The diff for this file is too large to render. See raw diff
 
subir/Curso de C Básico/03-Conceptos básicos/02-Tipos de Datos en C Booleanos Enteros Flotantes y Caracteres.mp4 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9be01261e70a7fbd0853028b9fb64a059e91b179169bda3b9138a6f584b6a9d7
3
+ size 71250766
subir/Curso de C Básico/03-Conceptos básicos/02-Tipos de Datos en C Booleanos Enteros Flotantes y Caracteres.vtt ADDED
@@ -0,0 +1,403 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ WEBVTT
2
+
3
+ 00:00:03.280 --> 00:00:04.799
4
+ Ahora vamos a hablar de otro tema que
5
+
6
+ 00:00:04.799 --> 00:00:06.879
7
+ es súper importante para el lenguaje de programación
8
+
9
+ 00:00:06.879 --> 00:00:08.900
10
+ C más más, igual que en otros lenguajes
11
+
12
+ 00:00:09.040 --> 00:00:11.599
13
+ inspirados en C. Y este es los tipos
14
+
15
+ 00:00:11.599 --> 00:00:14.420
16
+ de datos. Los tipos de datos son diferentes
17
+
18
+ 00:00:15.085 --> 00:00:17.645
19
+ valores que podemos meter a una computadora. Por
20
+
21
+ 00:00:17.645 --> 00:00:22.205
22
+ ejemplo, cuando queremos manipular información, como edades, nombres
23
+
24
+ 00:00:22.205 --> 00:00:26.125
25
+ de personas o diferentes tipos de datos más
26
+
27
+ 00:00:26.125 --> 00:00:29.050
28
+ complejos que queremos crear durante nuestro programa, necesitamos
29
+
30
+ 00:00:29.109 --> 00:00:32.229
31
+ indicarle a nuestro lenguaje de programación cuáles son
32
+
33
+ 00:00:32.229 --> 00:00:34.550
34
+ los datos que va a utilizar y también
35
+
36
+ 00:00:34.550 --> 00:00:37.030
37
+ de qué tipos son. Esto nos va a
38
+
39
+ 00:00:37.030 --> 00:00:38.809
40
+ permitir y le va a permitir al compilador
41
+
42
+ 00:00:39.110 --> 00:00:42.164
43
+ entender, dependiendo del tipo de datos, qué son
44
+
45
+ 00:00:42.164 --> 00:00:44.004
46
+ las cosas que puede hacer con estos datos
47
+
48
+ 00:00:44.004 --> 00:00:45.364
49
+ y cómo las va a hacer, ¿no? Le
50
+
51
+ 00:00:45.364 --> 00:00:47.445
52
+ va a permitir arrojarnos errores cuando lo hagamos
53
+
54
+ 00:00:47.445 --> 00:00:49.364
55
+ mal y le va a permitir realizar operaciones
56
+
57
+ 00:00:49.364 --> 00:00:52.245
58
+ cuando lo hagamos bien. Los diferentes tipos de
59
+
60
+ 00:00:52.245 --> 00:00:56.230
61
+ datos que existen son muchísimos. Sin embargo, los
62
+
63
+ 00:00:56.230 --> 00:00:59.110
64
+ principales son los que tienes aquí. La mayoría
65
+
66
+ 00:00:59.110 --> 00:01:00.790
67
+ de los compiladores van a tener este tipo
68
+
69
+ 00:01:00.790 --> 00:01:02.390
70
+ de datos, si no es que todos, ya
71
+
72
+ 00:01:02.390 --> 00:01:04.390
73
+ que son parte del estándar. Y aquí es
74
+
75
+ 00:01:04.390 --> 00:01:07.510
76
+ algo importante mencionar que en lenguajes como seis,
77
+
78
+ 00:01:07.510 --> 00:01:10.435
79
+ C más más, aunque están estandarizados, todavía existen
80
+
81
+ 00:01:10.435 --> 00:01:13.715
82
+ muchos compiladores independientes que se han creado que
83
+
84
+ 00:01:13.715 --> 00:01:15.315
85
+ no cumplen al cien por ciento con todos
86
+
87
+ 00:01:15.315 --> 00:01:18.595
88
+ los estándares, e incluso, dependiendo de la arquitectura
89
+
90
+ 00:01:18.595 --> 00:01:20.115
91
+ de la computadora para la que vayas a
92
+
93
+ 00:01:20.115 --> 00:01:22.995
94
+ compilar, es posible que, por ejemplo, los tamaños
95
+
96
+ 00:01:22.995 --> 00:01:25.719
97
+ de bytes de estos tipos de datos cambien,
98
+
99
+ 00:01:25.719 --> 00:01:28.219
100
+ por lo tanto, cambiando el tamaño de las
101
+
102
+ 00:01:28.219 --> 00:01:31.020
103
+ cosas que pueden almacenar o el número máximo
104
+
105
+ 00:01:31.020 --> 00:01:33.979
106
+ o mínimo de valores que pueden almacenar. Es
107
+
108
+ 00:01:33.979 --> 00:01:36.460
109
+ importante que tomes esto en cuenta para que
110
+
111
+ 00:01:36.460 --> 00:01:40.219
112
+ cuando programes para alguna plataforma real, siempre tengas
113
+
114
+ 00:01:40.219 --> 00:01:43.545
115
+ en cuenta investigar cuáles son las los tamaños
116
+
117
+ 00:01:43.545 --> 00:01:45.545
118
+ de bytes de reales de estos valores y
119
+
120
+ 00:01:45.545 --> 00:01:47.625
121
+ de estos tipos de datos, y también cuáles
122
+
123
+ 00:01:47.625 --> 00:01:49.545
124
+ son los tipos de datos soportados por tu
125
+
126
+ 00:01:49.545 --> 00:01:52.985
127
+ compilador. Los principales tipos de datos, sin embargo,
128
+
129
+ 00:01:52.985 --> 00:01:55.810
130
+ para continuar hablando del tema, son los siguientes.
131
+
132
+ 00:01:55.830 --> 00:01:58.330
133
+ El primero es el valor booleano o bull.
134
+
135
+ 00:01:58.630 --> 00:02:01.350
136
+ Son valores lógicos, es decir, verdadero y falso,
137
+
138
+ 00:02:01.350 --> 00:02:04.550
139
+ esos dos estados o esos dos valores, que
140
+
141
+ 00:02:04.550 --> 00:02:07.190
142
+ nuestro lenguaje de programación nos puede almacenar en
143
+
144
+ 00:02:07.190 --> 00:02:10.955
145
+ cuatro bytes. Estos cuatro bytes se utilizan porque,
146
+
147
+ 00:02:10.955 --> 00:02:13.355
148
+ aunque en realidad un verdadero y falso o
149
+
150
+ 00:02:13.355 --> 00:02:15.595
151
+ uno cero los podríamos almacenar precisamente en un
152
+
153
+ 00:02:15.595 --> 00:02:17.515
154
+ bit de información, la verdad es que los
155
+
156
+ 00:02:17.515 --> 00:02:21.810
157
+ compiladores se facilitan la vida utilizando un tamaño
158
+
159
+ 00:02:21.810 --> 00:02:24.769
160
+ completo de una variable para almacenar este valor,
161
+
162
+ 00:02:24.769 --> 00:02:27.250
163
+ de forma que puedan acceder de una forma
164
+
165
+ 00:02:27.250 --> 00:02:29.510
166
+ mucho más sencilla a estos valores sin necesidad
167
+
168
+ 00:02:30.129 --> 00:02:31.890
169
+ de estar accediendo a cada uno de sus
170
+
171
+ 00:02:31.890 --> 00:02:34.390
172
+ bits a buscar cuál es su valor real.
173
+
174
+ 00:02:34.645 --> 00:02:37.685
175
+ Entonces, utilizamos todo el tamaño disponible, que es
176
+
177
+ 00:02:37.685 --> 00:02:40.325
178
+ cuatro bytes, en este caso, para una variable
179
+
180
+ 00:02:40.325 --> 00:02:43.925
181
+ de tipo booleano. A continuación, el siguiente tipo
182
+
183
+ 00:02:43.925 --> 00:02:46.165
184
+ es el tipo entero, que se pone como
185
+
186
+ 00:02:46.165 --> 00:02:48.905
187
+ int. Este tipo de datos nos permite almacenar
188
+
189
+ 00:02:48.965 --> 00:02:51.250
190
+ números. Lo mismo, se almacena en un tamaño
191
+
192
+ 00:02:51.250 --> 00:02:54.050
193
+ de cuatro bytes de datos, lo que significa
194
+
195
+ 00:02:54.050 --> 00:02:57.170
196
+ que podemos almacenar valores bastante grandes y nos
197
+
198
+ 00:02:57.170 --> 00:03:01.090
199
+ permite además manejar números positivos o negativos utilizando
200
+
201
+ 00:03:01.090 --> 00:03:03.145
202
+ un bit para mantener el signo, y si
203
+
204
+ 00:03:03.145 --> 00:03:07.345
205
+ decidimos utilizar ese bit sin signo, podemos utilizarlo
206
+
207
+ 00:03:07.345 --> 00:03:11.025
208
+ para almacenar un número todavía más grande. El
209
+
210
+ 00:03:11.025 --> 00:03:12.785
211
+ siguiente tipo de datos es el tipo de
212
+
213
+ 00:03:12.785 --> 00:03:17.489
214
+ datos float, o números de punto flotante. Los
215
+
216
+ 00:03:17.489 --> 00:03:20.609
217
+ números decimales en las computadoras se almacenan en
218
+
219
+ 00:03:20.609 --> 00:03:22.370
220
+ otra forma de representar los que tiene las
221
+
222
+ 00:03:22.370 --> 00:03:24.709
223
+ matemáticas, que es por medio de los exponentes.
224
+
225
+ 00:03:25.010 --> 00:03:27.730
226
+ Almacenas la base y el exponente, y esa
227
+
228
+ 00:03:27.730 --> 00:03:30.730
229
+ es la representación interna que utilizan los lenguajes
230
+
231
+ 00:03:30.730 --> 00:03:33.325
232
+ de programación como C0C más más para almacenar
233
+
234
+ 00:03:33.385 --> 00:03:36.025
235
+ nuestros números decimales. Tú podrías almacenar un valor
236
+
237
+ 00:03:36.025 --> 00:03:39.005
238
+ como cero punto cinco, y la computadora utilizará
239
+
240
+ 00:03:39.065 --> 00:03:42.425
241
+ cuatro bytes para almacenar toda la información necesaria
242
+
243
+ 00:03:42.425 --> 00:03:45.900
244
+ para representar ese cero punto cinco. Nos permite
245
+
246
+ 00:03:45.900 --> 00:03:49.020
247
+ un rango bastante amplio de valores decimales, pero
248
+
249
+ 00:03:49.020 --> 00:03:50.780
250
+ más amplio es el rango que nos permite
251
+
252
+ 00:03:50.780 --> 00:03:52.460
253
+ el siguiente tipo de dato, que es el
254
+
255
+ 00:03:52.460 --> 00:03:55.200
256
+ tipo de dato double, es decir, un número
257
+
258
+ 00:03:55.340 --> 00:03:58.455
259
+ de punto flotante, pero de doble precisión. Como
260
+
261
+ 00:03:58.455 --> 00:04:00.775
262
+ ves, la diferencia es que ya no solamente
263
+
264
+ 00:04:00.775 --> 00:04:03.975
265
+ utilizarás cuatro bytes, sino en lugar utilizarás ocho
266
+
267
+ 00:04:03.975 --> 00:04:07.015
268
+ bytes para almacenar toda la información necesaria. Eso
269
+
270
+ 00:04:07.015 --> 00:04:10.315
271
+ significa que puedes eso significa que puedes almacenar
272
+
273
+ 00:04:10.710 --> 00:04:15.270
274
+ números mucho mayores de tipo coma flotante. Y
275
+
276
+ 00:04:15.270 --> 00:04:18.970
277
+ por último, tienes los caracteres asky. La variable
278
+
279
+ 00:04:19.750 --> 00:04:22.710
280
+ puede tener un tipo char y se pueden
281
+
282
+ 00:04:22.710 --> 00:04:27.905
283
+ almacenar valores numéricos que significan o representan letras.
284
+
285
+ 00:04:28.205 --> 00:04:29.965
286
+ La forma en la que funciona es que
287
+
288
+ 00:04:29.965 --> 00:04:32.465
289
+ cuando comenzó toda la era de la computación,
290
+
291
+ 00:04:32.685 --> 00:04:35.325
292
+ pues era una era demasiado temprana donde solamente
293
+
294
+ 00:04:35.325 --> 00:04:38.360
295
+ se utilizaban números para realizar, pues, todos los
296
+
297
+ 00:04:38.360 --> 00:04:41.100
298
+ cálculos o operaciones de un algoritmo, y fue
299
+
300
+ 00:04:41.320 --> 00:04:44.940
301
+ posteriormente cuando fue necesario representar letras para mostrarlas
302
+
303
+ 00:04:45.320 --> 00:04:48.380
304
+ en un monitor o para imprimirlas en papel,
305
+
306
+ 00:04:48.955 --> 00:04:51.515
307
+ que se necesitó estandarizar cómo se iban a
308
+
309
+ 00:04:51.515 --> 00:04:54.315
310
+ representar esas letras para la computadora. Allí surgió
311
+
312
+ 00:04:54.315 --> 00:04:56.715
313
+ la tabla ASCII, que es una tabla con
314
+
315
+ 00:04:56.715 --> 00:04:58.875
316
+ doscientos cincuenta y seis valores del cero al
317
+
318
+ 00:04:58.875 --> 00:05:01.615
319
+ doscientos cincuenta y cinco, que contienen una correlación
320
+
321
+ 00:05:01.835 --> 00:05:04.155
322
+ donde cada número de la tabla representa una
323
+
324
+ 00:05:04.155 --> 00:05:06.970
325
+ letra o un carácter del alfabeto. En este
326
+
327
+ 00:05:06.970 --> 00:05:09.210
328
+ caso, pueden ser las letras de la a
329
+
330
+ 00:05:09.210 --> 00:05:12.330
331
+ a la z, mayúsculas, minúsculas, y algunos caracteres
332
+
333
+ 00:05:12.330 --> 00:05:16.750
334
+ adicionales como espacios, signos de interrogación, asteriscos, etcétera.
335
+
336
+ 00:05:17.165 --> 00:05:20.045
337
+ Todos estos caracteres tienen asociado, como vimos, un
338
+
339
+ 00:05:20.045 --> 00:05:22.445
340
+ número en en la tabla. Por lo tanto,
341
+
342
+ 00:05:22.445 --> 00:05:24.685
343
+ el tipo char dentro de seis, C más
344
+
345
+ 00:05:24.685 --> 00:05:27.425
346
+ más, nos permitirán escribir este tipo de caracteres,
347
+
348
+ 00:05:27.565 --> 00:05:29.805
349
+ ya sea el valor del carácter entre comillas
350
+
351
+ 00:05:29.805 --> 00:05:34.810
352
+ simples o su equivalente numérico. Para esto, solamente
353
+
354
+ 00:05:34.810 --> 00:05:37.130
355
+ tenemos doscientos cincuenta y seis valores, por lo
356
+
357
+ 00:05:37.130 --> 00:05:40.330
358
+ que solamente necesitará un byte para almacenar esta
359
+
360
+ 00:05:40.330 --> 00:05:43.850
361
+ información. La forma en que lo hace internamente
362
+
363
+ 00:05:43.850 --> 00:05:47.450
364
+ cada compilador puede variar, incluso si utilizamos algún
365
+
366
+ 00:05:47.450 --> 00:05:51.345
367
+ otro sistema, por ejemplo, sistemas embebidos, también puede
368
+
369
+ 00:05:51.345 --> 00:05:54.225
370
+ variar. Lo que significa que no debemos confiarnos
371
+
372
+ 00:05:54.225 --> 00:05:56.385
373
+ y, volviendo al inicio de la clase, siempre
374
+
375
+ 00:05:56.385 --> 00:05:59.745
376
+ debemos investigar cuáles son las características soportadas por
377
+
378
+ 00:05:59.745 --> 00:06:02.865
379
+ nuestros compiladores y cuáles son los valores por
380
+
381
+ 00:06:02.865 --> 00:06:04.940
382
+ defecto de tamaños que va a utilizar para
383
+
384
+ 00:06:04.940 --> 00:06:07.980
385
+ cada tipo de dato. Algunos compiladores tendrán otros
386
+
387
+ 00:06:07.980 --> 00:06:11.020
388
+ tipos de datos adicionales y algunos se limitarán
389
+
390
+ 00:06:11.020 --> 00:06:15.340
391
+ a cumplir con el estándar. Bien, pues ahora
392
+
393
+ 00:06:15.340 --> 00:06:17.180
394
+ vamos a pasar a la siguiente clase, donde
395
+
396
+ 00:06:17.180 --> 00:06:20.088
397
+ aprenderás cómo aplicar estos tipos de datos para
398
+
399
+ 00:06:20.088 --> 00:06:22.808
400
+ crear variables y constantes que podrás utilizar en
401
+
402
+ 00:06:22.808 --> 00:06:24.748
403
+ tu programa más adelante.
subir/Curso de C Básico/03-Conceptos básicos/03-Creación y Uso de Variables en C.mp4 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9ee83a59c1cf17f76ec621493c413231f0bc27aa1f5947c623070782ed2adec2
3
+ size 62622024
subir/Curso de C Básico/03-Conceptos básicos/03-Creación y Uso de Variables en C.vtt ADDED
@@ -0,0 +1,340 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ WEBVTT
2
+
3
+ 00:00:03.120 --> 00:00:05.839
4
+ Vamos a hablar de otra característica muy importante
5
+
6
+ 00:00:05.839 --> 00:00:08.559
7
+ para los lenguajes de programación. Vamos a hablar
8
+
9
+ 00:00:08.559 --> 00:00:11.200
10
+ de las variables. Las variables son la forma
11
+
12
+ 00:00:11.200 --> 00:00:14.155
13
+ que nos da nuestro lenguaje de programación para
14
+
15
+ 00:00:14.155 --> 00:00:16.555
16
+ almacenar todos los datos relacionados con la ejecución
17
+
18
+ 00:00:16.555 --> 00:00:19.435
19
+ de nuestro programa. Por ejemplo, si queremos crear
20
+
21
+ 00:00:19.435 --> 00:00:22.814
22
+ un programa que almacene una lista de usuarios
23
+
24
+ 00:00:23.115 --> 00:00:26.075
25
+ o que almacene todas las tareas relacionadas a
26
+
27
+ 00:00:26.075 --> 00:00:29.490
28
+ una persona, esto va a ser almacenado en
29
+
30
+ 00:00:29.630 --> 00:00:33.230
31
+ variables durante la ejecución del programa. Para esto,
32
+
33
+ 00:00:33.230 --> 00:00:35.410
34
+ podemos crear variables en C más más utilizando
35
+
36
+ 00:00:35.470 --> 00:00:37.550
37
+ los tipos de datos que ya vimos en
38
+
39
+ 00:00:37.550 --> 00:00:40.989
40
+ la clase anterior. Como puedes ver, aquí tenemos
41
+
42
+ 00:00:40.989 --> 00:00:43.864
43
+ en pantalla el ejemplo anterior, nuestro hola mundo.
44
+
45
+ 00:00:44.324 --> 00:00:46.324
46
+ Como puedes ver, ahí siguen todas las partes
47
+
48
+ 00:00:46.324 --> 00:00:48.245
49
+ básicas de un programa en C más más
50
+
51
+ 00:00:48.245 --> 00:00:50.725
52
+ como la función main, la importación de la
53
+
54
+ 00:00:50.725 --> 00:00:53.204
55
+ librería iostream y el uso del espacio de
56
+
57
+ 00:00:53.204 --> 00:00:56.644
58
+ nombres estándar. Ahora, vamos a comenzar a crear
59
+
60
+ 00:00:56.644 --> 00:01:00.600
61
+ nuestras primeras variables. Esto lo podemos hacer indicando
62
+
63
+ 00:01:00.600 --> 00:01:02.300
64
+ el tipo de dato que vamos a almacenar,
65
+
66
+ 00:01:02.360 --> 00:01:05.180
67
+ un nombre para la variable, y si lo
68
+
69
+ 00:01:05.319 --> 00:01:07.880
70
+ necesitamos podemos darle un valor inicial, lo cual
71
+
72
+ 00:01:07.880 --> 00:01:10.840
73
+ además es una buena práctica. Por ejemplo, si
74
+
75
+ 00:01:10.840 --> 00:01:13.965
76
+ quisiéramos almacenar la edad de una persona, estaríamos
77
+
78
+ 00:01:13.965 --> 00:01:16.645
79
+ pensando en un valor de tipo numérico, por
80
+
81
+ 00:01:16.645 --> 00:01:19.045
82
+ lo tanto, lo primero que podemos hacer es
83
+
84
+ 00:01:19.045 --> 00:01:23.064
85
+ almacenar, es indicarle que es del tipo entero,
86
+
87
+ 00:01:23.125 --> 00:01:29.119
88
+ por ejemplo, int. A continuación, necesitaríamos escoger un
89
+
90
+ 00:01:29.119 --> 00:01:31.600
91
+ buen nombre para una variable. Los buenos nombres
92
+
93
+ 00:01:31.600 --> 00:01:34.159
94
+ para las variables nos hablan sobre de qué
95
+
96
+ 00:01:34.159 --> 00:01:36.320
97
+ se trata ese valor. En este caso, si
98
+
99
+ 00:01:36.320 --> 00:01:38.880
100
+ hablábamos de la edad de una persona, pues
101
+
102
+ 00:01:38.880 --> 00:01:44.005
103
+ podría ser la palabra edad. Es importante que
104
+
105
+ 00:01:44.005 --> 00:01:46.965
106
+ recuerdes que en lenguajes como CYC más más
107
+
108
+ 00:01:46.965 --> 00:01:50.005
109
+ las variables necesitan cumplir con ciertas reglas. Por
110
+
111
+ 00:01:50.005 --> 00:01:52.585
112
+ ejemplo, no pueden contener espacios y no pueden
113
+
114
+ 00:01:52.805 --> 00:01:56.270
115
+ contener caracteres extraños. Por lo tanto, la palabra
116
+
117
+ 00:01:56.270 --> 00:01:58.830
118
+ edad está bien, pero si tuviéramos dos o
119
+
120
+ 00:01:58.830 --> 00:02:02.030
121
+ más palabras podríamos mejor separarlas con guion bajo
122
+
123
+ 00:02:02.030 --> 00:02:06.430
124
+ para no utilizar espacios. Ahora, ya tenemos creada
125
+
126
+ 00:02:06.430 --> 00:02:09.389
127
+ nuestra variable tipo entero con la con el
128
+
129
+ 00:02:09.389 --> 00:02:12.595
130
+ nombre edad. Si quisiéramos asignarle un valor inicial,
131
+
132
+ 00:02:12.895 --> 00:02:16.715
133
+ podríamos hacerlo utilizando el símbolo de igual. Y
134
+
135
+ 00:02:17.375 --> 00:02:19.615
136
+ ahora, podemos pensar cuál es el mejor valor
137
+
138
+ 00:02:19.615 --> 00:02:21.855
139
+ por defecto que puede tener una variable, eso
140
+
141
+ 00:02:21.855 --> 00:02:23.970
142
+ dependerá del caso de uso. En este caso,
143
+
144
+ 00:02:24.030 --> 00:02:26.190
145
+ si queremos darle un valor por defecto a
146
+
147
+ 00:02:26.190 --> 00:02:28.990
148
+ una variable edad, pues podría ser una edad
149
+
150
+ 00:02:28.990 --> 00:02:31.790
151
+ estándar, por ejemplo dieciocho años, o podría ser
152
+
153
+ 00:02:31.790 --> 00:02:34.370
154
+ simplemente el número cero. Yo voy a utilizar
155
+
156
+ 00:02:34.430 --> 00:02:38.475
157
+ el valor del número cero. No debemos olvidar
158
+
159
+ 00:02:38.475 --> 00:02:40.155
160
+ que como esto se trata de una instrucción
161
+
162
+ 00:02:40.155 --> 00:02:41.915
163
+ de código que le estamos dando a la
164
+
165
+ 00:02:41.915 --> 00:02:46.235
166
+ computadora, como una orden necesitamos indicarle el fin
167
+
168
+ 00:02:46.235 --> 00:02:48.075
169
+ de esta orden por medio de un punto
170
+
171
+ 00:02:48.075 --> 00:02:52.150
172
+ y coma. Y ahora sí, tenemos nuestra variable
173
+
174
+ 00:02:52.150 --> 00:02:55.190
175
+ lista para ser utilizada en nuestro programa. Esta
176
+
177
+ 00:02:55.190 --> 00:02:57.830
178
+ variable ahora contiene el valor de cero, por
179
+
180
+ 00:02:57.830 --> 00:02:59.770
181
+ lo tanto, siempre que yo en mi programa
182
+
183
+ 00:02:59.910 --> 00:03:02.470
184
+ utilice la palabra edad, vamos a hacer referencia
185
+
186
+ 00:03:02.470 --> 00:03:05.894
187
+ a su valor cero. ¿Cómo yo podría mostrar
188
+
189
+ 00:03:05.894 --> 00:03:08.694
190
+ el valor de la variable edad para que
191
+
192
+ 00:03:08.694 --> 00:03:11.334
193
+ se muestre en nuestra terminal? Pues, de la
194
+
195
+ 00:03:11.334 --> 00:03:13.015
196
+ misma manera que lo hicimos con el hola
197
+
198
+ 00:03:13.015 --> 00:03:16.295
199
+ mundo. Yo voy a cambiar el valor de
200
+
201
+ 00:03:16.295 --> 00:03:18.150
202
+ la cadena de texto que dice hola mundo
203
+
204
+ 00:03:18.390 --> 00:03:22.230
205
+ por el valor de la variable edad, lo
206
+
207
+ 00:03:22.230 --> 00:03:25.510
208
+ coloco de esta manera. Ahora le estoy diciendo
209
+
210
+ 00:03:25.510 --> 00:03:27.590
211
+ a mi programa que muestre como salida de
212
+
213
+ 00:03:27.590 --> 00:03:30.470
214
+ su ejecución el valor de edad, en este
215
+
216
+ 00:03:30.470 --> 00:03:36.325
217
+ caso es cero. Vamos a ejecutarlo. Como recordarás,
218
+
219
+ 00:03:36.784 --> 00:03:39.424
220
+ podemos utilizar la tecla f seis gracias a
221
+
222
+ 00:03:39.424 --> 00:03:43.344
223
+ la extensión que instalamos en clases anteriores. Y
224
+
225
+ 00:03:43.344 --> 00:03:45.504
226
+ aquí lo tenemos, una vez que se compiló
227
+
228
+ 00:03:45.504 --> 00:03:47.340
229
+ y ejecutó el programa, su valor de salida
230
+
231
+ 00:03:47.340 --> 00:03:51.560
232
+ ha sido cero. Esto es el valor de
233
+
234
+ 00:03:51.560 --> 00:03:54.280
235
+ la variable edad. Vamos a probar qué pasa
236
+
237
+ 00:03:54.280 --> 00:03:56.120
238
+ si yo le pongo otro valor a esta
239
+
240
+ 00:03:56.120 --> 00:03:58.520
241
+ variable, por ejemplo, el diez, y de nuevo
242
+
243
+ 00:03:58.520 --> 00:04:02.245
244
+ le doy compilar y ejecutar. Ahora nos muestra
245
+
246
+ 00:04:02.245 --> 00:04:05.605
247
+ el valor diez como salida. Las variables, como
248
+
249
+ 00:04:05.605 --> 00:04:07.685
250
+ su nombre lo indica, pueden cambiar a lo
251
+
252
+ 00:04:07.685 --> 00:04:10.325
253
+ largo de la ejecución del programa, y aquí
254
+
255
+ 00:04:10.325 --> 00:04:13.079
256
+ es donde entra su verdadera utilidad, ya que
257
+
258
+ 00:04:13.379 --> 00:04:16.500
259
+ podemos manipularlas para tomar decisiones o por el
260
+
261
+ 00:04:16.500 --> 00:04:19.139
262
+ simple hecho de mostrarlas al usuario de alguna
263
+
264
+ 00:04:19.139 --> 00:04:21.459
265
+ u otra manera. Lo que podemos hacer con
266
+
267
+ 00:04:21.459 --> 00:04:24.680
268
+ las variables para modificarlas es utilizar el símbolo
269
+
270
+ 00:04:24.740 --> 00:04:28.075
271
+ de igual. Por ejemplo, si yo tengo un
272
+
273
+ 00:04:28.075 --> 00:04:33.515
274
+ valor inicial para la variable que fuera cero,
275
+
276
+ 00:04:33.515 --> 00:04:37.035
277
+ esta variable edad tal vez querría actualizarla en
278
+
279
+ 00:04:37.035 --> 00:04:39.515
280
+ algún momento para ponerle la edad real de
281
+
282
+ 00:04:39.515 --> 00:04:43.830
283
+ algún usuario. Supongamos que este usuario estamos validando
284
+
285
+ 00:04:43.970 --> 00:04:46.050
286
+ que sea mayor de dieciocho años o de
287
+
288
+ 00:04:46.050 --> 00:04:48.770
289
+ dieciocho años, pues podríamos pedirle la edad y
290
+
291
+ 00:04:48.770 --> 00:04:50.930
292
+ la edad podría contener un número, por ejemplo,
293
+
294
+ 00:04:50.930 --> 00:04:55.425
295
+ el número dieciocho. Para hacer esto, simplemente necesitamos
296
+
297
+ 00:04:55.425 --> 00:04:57.664
298
+ en una nueva línea de código actualizar el
299
+
300
+ 00:04:57.664 --> 00:05:00.145
301
+ valor de la variable, por ejemplo, puedo escribir
302
+
303
+ 00:05:00.145 --> 00:05:06.064
304
+ edad igual a dieciocho, y como se trata
305
+
306
+ 00:05:06.064 --> 00:05:07.425
307
+ de una instrucción que le damos a la
308
+
309
+ 00:05:07.425 --> 00:05:10.440
310
+ computadora, podríamos terminar con punto y coma. Esto
311
+
312
+ 00:05:11.780 --> 00:05:14.020
313
+ actualizará el valor de nuestra variable edad a
314
+
315
+ 00:05:14.020 --> 00:05:16.600
316
+ dieciocho, ya no vale cero, ahora vale dieciocho.
317
+
318
+ 00:05:16.660 --> 00:05:20.354
319
+ ¿Qué pasaría si ejecutamos este programa? Pues, el
320
+
321
+ 00:05:20.354 --> 00:05:23.875
322
+ valor de salida será dieciocho. De esta forma,
323
+
324
+ 00:05:23.875 --> 00:05:26.354
325
+ podemos reasignarle valores una y otra vez a
326
+
327
+ 00:05:26.354 --> 00:05:30.115
328
+ todas nuestras variables para poder realizar todos los
329
+
330
+ 00:05:30.115 --> 00:05:33.191
331
+ procesos que necesitemos en nuestro programa. Te invito
332
+
333
+ 00:05:33.191 --> 00:05:35.531
334
+ a ver la próxima clase donde continuaremos hablando
335
+
336
+ 00:05:35.671 --> 00:05:39.351
337
+ sobre ciertas características de las variables, cómo serían
338
+
339
+ 00:05:39.351 --> 00:05:42.891
340
+ las constantes y algunos otros tipos de datos.
subir/Curso de C Básico/03-Conceptos básicos/03-Lecturas recomendadas.txt ADDED
@@ -0,0 +1 @@
 
 
1
+ https://github.com/platzi/curso-basico-c-plus-plus/tree/variables
subir/Curso de C Básico/03-Conceptos básicos/03-Resumen.html ADDED
The diff for this file is too large to render. See raw diff
 
subir/Curso de C Básico/03-Conceptos básicos/03-variables.zip ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:917d37dc9c2c38bda1d33edf510a998e2f7ce2b00df47c7cd8a99a3d33468ddc
3
+ size 1197
subir/Curso de C Básico/03-Conceptos básicos/04-Constantes y Listas en C Uso y Manipulación Básica.mp4 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:283cb7b5404d79d7b0e2da82b3175e0f999a5d290379d14792e5f7cbc046a6c6
3
+ size 117872186
subir/Curso de C Básico/03-Conceptos básicos/04-Constantes y Listas en C Uso y Manipulación Básica.vtt ADDED
@@ -0,0 +1,676 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ WEBVTT
2
+
3
+ 00:00:03.040 --> 00:00:05.680
4
+ Vamos a hablar sobre dos características muy importantes
5
+
6
+ 00:00:05.680 --> 00:00:08.240
7
+ de las variables en C más más, estos
8
+
9
+ 00:00:08.240 --> 00:00:11.840
10
+ son las constantes y las listas. Vamos al
11
+
12
+ 00:00:11.840 --> 00:00:14.400
13
+ código. Como puedes ver, aquí tenemos el ejemplo
14
+
15
+ 00:00:14.400 --> 00:00:16.765
16
+ de la clase anterior, donde hablamos sobre cuál
17
+
18
+ 00:00:16.765 --> 00:00:19.244
19
+ es la estructura básica de las variables. Vimos
20
+
21
+ 00:00:19.244 --> 00:00:21.244
22
+ que primero vas a declarar el tipo de
23
+
24
+ 00:00:21.244 --> 00:00:23.244
25
+ dato, en segundo lugar, vas a ponerle un
26
+
27
+ 00:00:23.244 --> 00:00:26.445
28
+ nombre y, finalmente, puedes opcionalmente agregarle un valor.
29
+
30
+ 00:00:26.445 --> 00:00:30.044
31
+ Vimos el ejemplo con el tipo de dato
32
+
33
+ 00:00:30.044 --> 00:00:32.659
34
+ entero y la variable edad, pero no está
35
+
36
+ 00:00:32.659 --> 00:00:34.739
37
+ de más recordarte que esta es la misma
38
+
39
+ 00:00:34.739 --> 00:00:37.059
40
+ estructura que vas a poder utilizar para cualquier
41
+
42
+ 00:00:37.059 --> 00:00:39.460
43
+ otro tipo de dato, ya sean datos que
44
+
45
+ 00:00:39.460 --> 00:00:41.620
46
+ vengan por defecto en tu compilador o que
47
+
48
+ 00:00:41.620 --> 00:00:44.260
49
+ más adelante puedas crear definiendo tus propios tipos
50
+
51
+ 00:00:44.260 --> 00:00:47.605
52
+ de datos. Las variables, por ejemplo, se podrían
53
+
54
+ 00:00:47.985 --> 00:00:49.745
55
+ declarar si fueras a hablar de una variable
56
+
57
+ 00:00:49.745 --> 00:00:54.545
58
+ de tipo carácter utilizando char, luego le podrías
59
+
60
+ 00:00:54.545 --> 00:00:57.205
61
+ poner cualquier nombre que tú desees, por ejemplo,
62
+
63
+ 00:00:57.265 --> 00:01:00.110
64
+ letra, siempre que se cumplan las reglas de
65
+
66
+ 00:01:00.110 --> 00:01:01.989
67
+ las que hablamos en la clase anterior, esto
68
+
69
+ 00:01:01.989 --> 00:01:04.590
70
+ estará bien. La única diferencia con letra es
71
+
72
+ 00:01:04.590 --> 00:01:06.510
73
+ que, a la hora de hacerle la asignación
74
+
75
+ 00:01:06.510 --> 00:01:08.430
76
+ de un valor, vas a tener que escribir
77
+
78
+ 00:01:08.430 --> 00:01:12.414
79
+ el carácter dentro de comillas simples. Y, como
80
+
81
+ 00:01:12.414 --> 00:01:14.335
82
+ sabes, vas a tener que utilizar el punto
83
+
84
+ 00:01:14.335 --> 00:01:16.174
85
+ y coma, dado que es una orden que
86
+
87
+ 00:01:16.174 --> 00:01:18.735
88
+ le estás dando a la computadora. En este
89
+
90
+ 00:01:18.735 --> 00:01:21.715
91
+ caso, yo quisiera almacenar la letra a, por
92
+
93
+ 00:01:22.095 --> 00:01:24.255
94
+ ejemplo, entonces, esta es la forma en la
95
+
96
+ 00:01:24.255 --> 00:01:27.259
97
+ que lo haría. Si yo quisiera imprimir el
98
+
99
+ 00:01:27.259 --> 00:01:30.479
100
+ valor de la letra a, podría simplemente agregar
101
+
102
+ 00:01:30.780 --> 00:01:33.179
103
+ una línea de seout, podría editar la que
104
+
105
+ 00:01:33.179 --> 00:01:34.780
106
+ ya tengo o podría agregar una nueva, yo
107
+
108
+ 00:01:34.780 --> 00:01:37.259
109
+ voy a agregar una nueva con la que
110
+
111
+ 00:01:37.259 --> 00:01:41.995
112
+ voy a poder imprimir su valor. Algo importante
113
+
114
+ 00:01:42.295 --> 00:01:44.295
115
+ para el uso de SEOut es que podemos
116
+
117
+ 00:01:44.295 --> 00:01:46.135
118
+ realizar cambios de línea para que no se
119
+
120
+ 00:01:46.135 --> 00:01:49.595
121
+ nos amontonen todos los valores utilizando otra característica
122
+
123
+ 00:01:49.815 --> 00:01:53.910
124
+ de la librería ioStream, que es endline, y
125
+
126
+ 00:01:53.910 --> 00:01:57.830
127
+ se coloca utilizando los mismos símbolos de menor
128
+
129
+ 00:01:57.830 --> 00:02:03.190
130
+ que y agregando end l al final. Esto
131
+
132
+ 00:02:03.190 --> 00:02:05.590
133
+ lo que hará es, al final, después de
134
+
135
+ 00:02:05.590 --> 00:02:08.195
136
+ esa, en este caso, agregar la edad a
137
+
138
+ 00:02:08.195 --> 00:02:10.514
139
+ la salida de la terminal, nos va a
140
+
141
+ 00:02:10.514 --> 00:02:12.595
142
+ realizar un cambio de línea y en la
143
+
144
+ 00:02:12.595 --> 00:02:14.835
145
+ nueva línea es donde comenzará a escribir los
146
+
147
+ 00:02:14.835 --> 00:02:18.915
148
+ nuevos valores, en este caso, la letra. Vamos
149
+
150
+ 00:02:18.915 --> 00:02:20.835
151
+ a compilar y ejecutar nuestro código con la
152
+
153
+ 00:02:20.835 --> 00:02:23.600
154
+ tecla f seis y ahí tienes el resultado.
155
+
156
+ 00:02:24.060 --> 00:02:26.620
157
+ Muestra primero el dieciocho, que es respecto a
158
+
159
+ 00:02:26.620 --> 00:02:29.420
160
+ la edad de la persona, y ahora mostramos
161
+
162
+ 00:02:29.420 --> 00:02:33.420
163
+ la letra a. Ya que tienes esta este
164
+
165
+ 00:02:33.420 --> 00:02:36.140
166
+ conocimiento de cómo se realizan los diferentes tipos
167
+
168
+ 00:02:36.140 --> 00:02:38.665
169
+ de datos, cómo se utilizan para crear variables,
170
+
171
+ 00:02:39.045 --> 00:02:41.364
172
+ es importante que sepas que existe una forma
173
+
174
+ 00:02:41.364 --> 00:02:42.965
175
+ de fijar esos valores para que no se
176
+
177
+ 00:02:42.965 --> 00:02:46.504
178
+ puedan editar. Como viste, en la variable de
179
+
180
+ 00:02:46.564 --> 00:02:48.805
181
+ edad tú podías asignarle un nuevo valor, que
182
+
183
+ 00:02:48.805 --> 00:02:50.885
184
+ en este caso era dieciocho, a ese a
185
+
186
+ 00:02:50.885 --> 00:02:54.570
187
+ esa variable. En algunas ocasiones, es importante que
188
+
189
+ 00:02:54.570 --> 00:02:56.570
190
+ fijes que no se debe poder editar ese
191
+
192
+ 00:02:56.570 --> 00:02:58.810
193
+ valor durante la ejecución de tu programa, ya
194
+
195
+ 00:02:58.810 --> 00:03:01.290
196
+ sea porque podría causar un un problema o
197
+
198
+ 00:03:01.290 --> 00:03:04.970
199
+ porque simplemente necesitas que el compilador no no
200
+
201
+ 00:03:04.970 --> 00:03:07.450
202
+ realice optimizaciones para que se les puedan asignar
203
+
204
+ 00:03:07.450 --> 00:03:10.448
205
+ valores, que solamente lo tome como un valor
206
+
207
+ 00:03:10.448 --> 00:03:13.445
208
+ inicial y que nunca se asigna. En ese
209
+
210
+ 00:03:13.445 --> 00:03:16.725
211
+ caso, puedes utilizar la palabra const para decirle
212
+
213
+ 00:03:16.725 --> 00:03:18.725
214
+ que esta variable es fija y nunca debe
215
+
216
+ 00:03:18.725 --> 00:03:21.460
217
+ poder reasignarse. La forma en que lo harías
218
+
219
+ 00:03:21.460 --> 00:03:24.040
220
+ sería antes de la declaración de la variable,
221
+
222
+ 00:03:24.100 --> 00:03:27.380
223
+ vamos a escribir la palabra const antes de
224
+
225
+ 00:03:27.380 --> 00:03:30.040
226
+ la declaración de nuestra variable, y con esto
227
+
228
+ 00:03:30.260 --> 00:03:33.300
229
+ ya tendríamos declarado que no podemos modificar el
230
+
231
+ 00:03:33.300 --> 00:03:36.005
232
+ valor de la variable letra, en este caso,
233
+
234
+ 00:03:36.005 --> 00:03:38.725
235
+ siempre va a ser la letra a. ¿Qué
236
+
237
+ 00:03:38.725 --> 00:03:41.925
238
+ pasa si yo quiero ejecutar este código? Pues,
239
+
240
+ 00:03:41.925 --> 00:03:43.685
241
+ va a funcionar de forma normal, pero ¿qué
242
+
243
+ 00:03:43.685 --> 00:03:46.710
244
+ pasaría si yo quisiera editar el valor de
245
+
246
+ 00:03:46.950 --> 00:03:50.710
247
+ esta variable letra, yo quisiera asignarle un nuevo
248
+
249
+ 00:03:50.710 --> 00:03:53.130
250
+ valor que sea, por ejemplo, la letra b?
251
+
252
+ 00:03:56.710 --> 00:03:58.790
253
+ En primer lugar, mi editor de código me
254
+
255
+ 00:03:58.790 --> 00:04:01.575
256
+ va a decir que esta es una constante,
257
+
258
+ 00:04:01.575 --> 00:04:04.635
259
+ por lo tanto, no debería tratar de modificarlo.
260
+
261
+ 00:04:05.415 --> 00:04:07.355
262
+ ¿Y qué pasa si yo trato de compilarlo
263
+
264
+ 00:04:07.415 --> 00:04:09.095
265
+ de todos modos? Pues, me va a dar
266
+
267
+ 00:04:09.095 --> 00:04:10.935
268
+ un error, me va a indicar que en
269
+
270
+ 00:04:10.935 --> 00:04:15.095
271
+ la línea nueve, en el carácter número trece
272
+
273
+ 00:04:15.095 --> 00:04:16.954
274
+ de esa línea, aquí me lo está diciendo,
275
+
276
+ 00:04:18.120 --> 00:04:19.959
277
+ Justamente, aquí me pone una flechita sobre la
278
+
279
+ 00:04:19.959 --> 00:04:21.560
280
+ b y me dice que esto es un
281
+
282
+ 00:04:21.560 --> 00:04:23.660
283
+ valor de solo lectura, yo no puedo editarlo,
284
+
285
+ 00:04:24.120 --> 00:04:26.060
286
+ así que no me va a dejar compilar.
287
+
288
+ 00:04:26.920 --> 00:04:29.400
289
+ Esta es la forma que podemos utilizar, como
290
+
291
+ 00:04:29.400 --> 00:04:32.914
292
+ mencionaba, para proteger ciertos datos o ciertos tipos
293
+
294
+ 00:04:32.914 --> 00:04:35.634
295
+ de valores para que los usuarios no tengan
296
+
297
+ 00:04:35.634 --> 00:04:37.974
298
+ acceso a editarlos o nadie trate de modificarlos
299
+
300
+ 00:04:38.115 --> 00:04:42.755
301
+ por accidente. Voy a quitar esta línea de
302
+
303
+ 00:04:42.755 --> 00:04:44.594
304
+ código que trato de modificar y voy a
305
+
306
+ 00:04:44.594 --> 00:04:48.500
307
+ compilar de nuevo, y ahí está, funcionando una
308
+
309
+ 00:04:48.500 --> 00:04:52.180
310
+ vez más. Ahora, ya hablamos sobre las constantes
311
+
312
+ 00:04:52.180 --> 00:04:54.580
313
+ y ya hablamos sobre las variables. Así como
314
+
315
+ 00:04:54.580 --> 00:04:57.540
316
+ yo creé tipos enteros, tipo carácter, yo podría
317
+
318
+ 00:04:57.540 --> 00:05:01.104
319
+ haber creado tipos booleanos, flotantes, etcétera, y seguiría
320
+
321
+ 00:05:01.725 --> 00:05:03.645
322
+ funcionando. Vamos a hablar de otro tema que
323
+
324
+ 00:05:03.645 --> 00:05:05.965
325
+ también es importante dentro de C más más,
326
+
327
+ 00:05:05.965 --> 00:05:08.445
328
+ y es cómo vamos a hacer para hacer
329
+
330
+ 00:05:08.445 --> 00:05:11.565
331
+ conjuntos de valores. Supongamos que tú tienes una
332
+
333
+ 00:05:11.565 --> 00:05:14.750
334
+ lista de personas, pero no necesitas saber todos
335
+
336
+ 00:05:14.750 --> 00:05:17.150
337
+ sus datos, tal vez solamente quieres obtener cuál
338
+
339
+ 00:05:17.150 --> 00:05:20.190
340
+ es la edad promedio. En este caso, solamente
341
+
342
+ 00:05:20.190 --> 00:05:23.790
343
+ necesitarías las edades de cada persona. Por lo
344
+
345
+ 00:05:23.790 --> 00:05:26.625
346
+ tanto, tendrías una lista de edades. Si tú
347
+
348
+ 00:05:26.625 --> 00:05:29.305
349
+ quisieras hacer un proceso con estas edades, no
350
+
351
+ 00:05:29.305 --> 00:05:32.185
352
+ sería muy eficiente crear una variable por cada
353
+
354
+ 00:05:32.185 --> 00:05:35.145
355
+ edad, porque, en primer lugar, estarías escribiendo edad
356
+
357
+ 00:05:35.145 --> 00:05:37.465
358
+ uno, edad dos, edad tres, edad cuatro como
359
+
360
+ 00:05:37.465 --> 00:05:41.340
361
+ variables, lo cual haría muy cansado y muy
362
+
363
+ 00:05:41.340 --> 00:05:44.860
364
+ tedioso la programación. Y, en segundo lugar, en
365
+
366
+ 00:05:44.860 --> 00:05:46.940
367
+ la ejecución de tu programa, realmente, no vas
368
+
369
+ 00:05:46.940 --> 00:05:49.740
370
+ a saber cuántos elementos tiene la lista, cuántas
371
+
372
+ 00:05:49.740 --> 00:05:53.495
373
+ personas vas a sacar el promedio. Entonces, una
374
+
375
+ 00:05:53.495 --> 00:05:56.255
376
+ forma mejor de hacerlo es utilizar las listas
377
+
378
+ 00:05:56.255 --> 00:05:58.735
379
+ de c más más, y esto es por
380
+
381
+ 00:05:58.735 --> 00:06:02.355
382
+ medio de la siguiente sintaxis. En primer lugar,
383
+
384
+ 00:06:02.575 --> 00:06:04.910
385
+ vas a crear una variable, como cualquier otra,
386
+
387
+ 00:06:04.910 --> 00:06:07.790
388
+ supongamos que queremos almacenar la lista de edades
389
+
390
+ 00:06:07.790 --> 00:06:10.910
391
+ de una serie de personas. Primero indicarías de
392
+
393
+ 00:06:10.910 --> 00:06:13.389
394
+ qué tipo. Como sabemos que van a ser
395
+
396
+ 00:06:13.389 --> 00:06:15.550
397
+ las edades, sabemos que todas son variables numéricas,
398
+
399
+ 00:06:15.550 --> 00:06:17.550
400
+ en C más más no puedes combinar estos
401
+
402
+ 00:06:17.550 --> 00:06:20.305
403
+ tipos, no podrías poner algo como entero y
404
+
405
+ 00:06:20.305 --> 00:06:23.505
406
+ luego que otro valor sea un carácter, sino
407
+
408
+ 00:06:23.505 --> 00:06:25.585
409
+ que tienen que ser todos enteros, en este
410
+
411
+ 00:06:25.585 --> 00:06:29.505
412
+ caso. La lista sería, por ejemplo, lista de
413
+
414
+ 00:06:29.505 --> 00:06:31.265
415
+ edades, por lo tanto, le puedo poner ese
416
+
417
+ 00:06:31.265 --> 00:06:39.380
418
+ ese nombre, lista edades, y le puedo asignar
419
+
420
+ 00:06:39.380 --> 00:06:41.060
421
+ un valor inicial, voy a poner el punto
422
+
423
+ 00:06:41.060 --> 00:06:43.780
424
+ y coma para que aparezca desde este momento,
425
+
426
+ 00:06:43.780 --> 00:06:46.020
427
+ para que no se me olvide. Ahora, ¿cómo
428
+
429
+ 00:06:46.020 --> 00:06:48.660
430
+ yo puedo indicarle que quiero una lista de
431
+
432
+ 00:06:48.660 --> 00:06:51.695
433
+ edades? Bueno, necesito añadir dos cosas. En primer
434
+
435
+ 00:06:51.695 --> 00:06:54.895
436
+ lugar, necesito agregarle, pues, la lista de valores
437
+
438
+ 00:06:54.895 --> 00:06:57.135
439
+ uno tras otro y, en segundo lugar, necesito
440
+
441
+ 00:06:57.135 --> 00:06:59.055
442
+ indicarle a mi lenguaje qué se trata de
443
+
444
+ 00:06:59.055 --> 00:07:01.854
445
+ una lista. Para indicarle qué se trata de
446
+
447
+ 00:07:01.854 --> 00:07:04.335
448
+ una lista, voy a utilizar estos símbolos de
449
+
450
+ 00:07:04.335 --> 00:07:06.840
451
+ corchetes que me permiten, que le permiten a
452
+
453
+ 00:07:06.840 --> 00:07:08.280
454
+ C más más saber que aquí se trata
455
+
456
+ 00:07:08.280 --> 00:07:11.000
457
+ de una lista. Y para agregarle una lista
458
+
459
+ 00:07:11.000 --> 00:07:15.800
460
+ de valores, voy a utilizar estas llaves donde
461
+
462
+ 00:07:15.800 --> 00:07:18.040
463
+ C más más me va a permitir agregar,
464
+
465
+ 00:07:18.040 --> 00:07:19.880
466
+ pues, todos los valores que yo quiera guardar
467
+
468
+ 00:07:19.880 --> 00:07:23.465
469
+ en esa lista de edades, por ejemplo. Aquí,
470
+
471
+ 00:07:23.465 --> 00:07:25.305
472
+ la única condición es que yo separe los
473
+
474
+ 00:07:25.305 --> 00:07:28.104
475
+ valores por comas. Si yo quisiera tener solamente
476
+
477
+ 00:07:28.104 --> 00:07:30.345
478
+ un valor que tenga la primera edad, por
479
+
480
+ 00:07:30.345 --> 00:07:34.419
481
+ ejemplo, dieciocho, podría tenerlo así, Pero si yo
482
+
483
+ 00:07:34.419 --> 00:07:37.699
484
+ quiero tener una lista de diez, veinte, treinta
485
+
486
+ 00:07:37.699 --> 00:07:40.500
487
+ edades, tal vez solo unas cuantas edades, como
488
+
489
+ 00:07:40.500 --> 00:07:43.460
490
+ tres, lo que tendría que hacer es separarlas
491
+
492
+ 00:07:43.460 --> 00:07:48.115
493
+ por coma. La forma sería, por ejemplo, de
494
+
495
+ 00:07:48.115 --> 00:07:51.315
496
+ esta forma. Con esto, yo ya tengo una
497
+
498
+ 00:07:51.315 --> 00:07:54.435
499
+ lista de edades que tiene almacenados una lista
500
+
501
+ 00:07:54.435 --> 00:07:56.995
502
+ de valores reales que yo ya puedo procesar.
503
+
504
+ 00:07:56.995 --> 00:07:58.995
505
+ Esto me va a dar varias facilidades más
506
+
507
+ 00:07:58.995 --> 00:08:01.075
508
+ adelante en en los ejemplos que vamos a
509
+
510
+ 00:08:01.075 --> 00:08:03.720
511
+ ver, de momento, es importante que sepas que
512
+
513
+ 00:08:03.720 --> 00:08:06.140
514
+ las listas se declaran de esta manera y
515
+
516
+ 00:08:06.200 --> 00:08:07.960
517
+ cómo sería la forma de acceder a estos
518
+
519
+ 00:08:07.960 --> 00:08:11.160
520
+ valores. Ahora, te estarás preguntando, ok, si yo
521
+
522
+ 00:08:11.160 --> 00:08:13.720
523
+ quisiera imprimir el valor de la edad, la
524
+
525
+ 00:08:13.720 --> 00:08:15.300
526
+ la primera variable que se encuentra en la
527
+
528
+ 00:08:15.300 --> 00:08:17.384
529
+ línea seis, que se llama edad, es simple,
530
+
531
+ 00:08:17.384 --> 00:08:20.985
532
+ solamente digo se out, edad y listo. ¿Cómo
533
+
534
+ 00:08:20.985 --> 00:08:24.185
535
+ imprimiría yo solamente un valor de la lista?
536
+
537
+ 00:08:24.185 --> 00:08:26.504
538
+ Por ejemplo, solo el dieciocho o solo el
539
+
540
+ 00:08:26.504 --> 00:08:29.305
541
+ veinticuatro o solo el dieciséis. La forma que
542
+
543
+ 00:08:29.305 --> 00:08:30.905
544
+ nos da C más más es acceder por
545
+
546
+ 00:08:30.905 --> 00:08:32.830
547
+ el número de lista, es lo que se
548
+
549
+ 00:08:32.830 --> 00:08:35.990
550
+ conoce como el índice, y en programación comenzamos
551
+
552
+ 00:08:35.990 --> 00:08:38.410
553
+ a contar los elementos a partir de cero.
554
+
555
+ 00:08:38.630 --> 00:08:41.429
556
+ Por lo tanto, el primer valor se encuentra
557
+
558
+ 00:08:41.429 --> 00:08:43.910
559
+ en el índice cero, el segundo valor se
560
+
561
+ 00:08:43.910 --> 00:08:46.545
562
+ encuentra en el índice uno, y el tercer
563
+
564
+ 00:08:46.545 --> 00:08:48.945
565
+ valor se encuentra en el índice, que como
566
+
567
+ 00:08:48.945 --> 00:08:51.525
568
+ ya vimos es un número de lista, número
569
+
570
+ 00:08:51.585 --> 00:08:55.025
571
+ dos. Y esto nos va a permitir acceder
572
+
573
+ 00:08:55.025 --> 00:08:57.125
574
+ a esos valores por medio del índice utilizando
575
+
576
+ 00:08:57.505 --> 00:09:00.449
577
+ los corchetes. Por ejemplo, si yo quiero imprimir
578
+
579
+ 00:09:00.589 --> 00:09:02.750
580
+ la lista, el valor de la lista que
581
+
582
+ 00:09:02.750 --> 00:09:05.630
583
+ es el número veinticuatro, tendría que decirle, quiero
584
+
585
+ 00:09:05.630 --> 00:09:08.610
586
+ de la lista de edades el índice uno.
587
+
588
+ 00:09:09.550 --> 00:09:13.475
589
+ Voy a realizar el ejemplo con un c
590
+
591
+ 00:09:13.475 --> 00:09:15.555
592
+ out, en este caso, voy a darle un
593
+
594
+ 00:09:15.555 --> 00:09:18.035
595
+ end l para que termine esa línea, haga
596
+
597
+ 00:09:18.035 --> 00:09:20.275
598
+ un cambio de línea, y voy a agregar
599
+
600
+ 00:09:20.275 --> 00:09:23.955
601
+ uno nuevo. Y la forma en que yo
602
+
603
+ 00:09:23.955 --> 00:09:27.139
604
+ podría hacerlo es comenzar a escribir lista de
605
+
606
+ 00:09:27.440 --> 00:09:32.240
607
+ edades, así, utilizar unos corchetes, y dentro de
608
+
609
+ 00:09:32.240 --> 00:09:36.740
610
+ los corchetes yo puedo indicarle cuál es el
611
+
612
+ 00:09:36.879 --> 00:09:38.835
613
+ índice al que quiero acceder. Por ejemplo, si
614
+
615
+ 00:09:38.995 --> 00:09:41.395
616
+ yo quiero acceder al número veinticuatro, tengo que
617
+
618
+ 00:09:41.395 --> 00:09:48.755
619
+ es la posición uno. Ahí está. Como te
620
+
621
+ 00:09:48.755 --> 00:09:50.755
622
+ das cuenta, nuestro editor de código ya no
623
+
624
+ 00:09:50.755 --> 00:09:52.515
625
+ se queja, ya nos deja hacerlo, y si
626
+
627
+ 00:09:52.515 --> 00:09:54.830
628
+ yo le doy ejecutar a nuestro programa, voy
629
+
630
+ 00:09:54.830 --> 00:09:58.110
631
+ a obtener el último valor de nuestra ejecución
632
+
633
+ 00:09:58.110 --> 00:10:00.510
634
+ que está aquí, el veinticuatro, es el valor
635
+
636
+ 00:10:00.510 --> 00:10:03.390
637
+ al que yo quería acceder. Accedí gracias a
638
+
639
+ 00:10:03.390 --> 00:10:05.650
640
+ su número de lista, que es su índice,
641
+
642
+ 00:10:05.710 --> 00:10:07.630
643
+ y el nombre de la variable. De esta
644
+
645
+ 00:10:07.630 --> 00:10:10.885
646
+ misma manera, yo podría asignarle un valor. Por
647
+
648
+ 00:10:10.885 --> 00:10:13.285
649
+ ejemplo, si yo quiero asignarle un nuevo valor
650
+
651
+ 00:10:13.285 --> 00:10:15.945
652
+ que, en lugar de ser veinticuatro, ese elemento
653
+
654
+ 00:10:16.084 --> 00:10:20.165
655
+ sea veintiséis, podría hacerlo. Lo haría de la
656
+
657
+ 00:10:20.165 --> 00:10:25.130
658
+ siguiente manera, lista de edades, el índice igual
659
+
660
+ 00:10:26.070 --> 00:10:28.310
661
+ a, y el nuevo valor que yo quiero
662
+
663
+ 00:10:28.310 --> 00:10:32.870
664
+ asignarle. Una vez hecho esto, guardo y vuelvo
665
+
666
+ 00:10:32.870 --> 00:10:36.790
667
+ a compilar, y listo, ahora me aparece el
668
+
669
+ 00:10:36.790 --> 00:10:43.041
670
+ número veintiséis. Esto es cómo crear variables constantes
671
+
672
+ 00:10:43.421 --> 00:10:45.901
673
+ y listas en C más más. Te veo
674
+
675
+ 00:10:45.901 --> 00:10:47.041
676
+ en la próxima clase.
subir/Curso de C Básico/03-Conceptos básicos/04-Lecturas recomendadas.txt ADDED
@@ -0,0 +1,2 @@
 
 
 
1
+ https://platzi.com/cursos/programacion-basica/
2
+ https://github.com/platzi/curso-basico-c-plus-plus/tree/constantes-listas
subir/Curso de C Básico/03-Conceptos básicos/04-Resumen.html ADDED
The diff for this file is too large to render. See raw diff
 
subir/Curso de C Básico/03-Conceptos básicos/04-constantes-listas.zip ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:15e6ee985a2c67139b1d20580378b1fe6b628185a9d3002082fa97605cf55baf
3
+ size 1877
subir/Curso de C Básico/03-Conceptos básicos/05-Lecturas recomendadas.txt ADDED
@@ -0,0 +1 @@
 
 
1
+ https://github.com/platzi/curso-basico-c-plus-plus/tree/operadores
subir/Curso de C Básico/03-Conceptos básicos/05-Operadores en C Aritméticos Comparativos y Lógicos.mp4 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:5eba26648c6d5d3bbffb773cb16a153716446a868d2d1a09da68077ec268ca4f
3
+ size 149543008
subir/Curso de C Básico/03-Conceptos básicos/05-Operadores en C Aritméticos Comparativos y Lógicos.vtt ADDED
@@ -0,0 +1,799 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ WEBVTT
2
+
3
+ 00:00:03.199 --> 00:00:05.279
4
+ Vamos a hablar sobre otro tema muy importante
5
+
6
+ 00:00:05.279 --> 00:00:08.400
7
+ de la programación, que son los operadores. En
8
+
9
+ 00:00:08.400 --> 00:00:12.320
10
+ C más más existen diferentes tipos de operadores.
11
+
12
+ 00:00:12.320 --> 00:00:15.474
13
+ En primer lugar, existen los operadores aritméticos, como
14
+
15
+ 00:00:15.474 --> 00:00:19.715
16
+ la suma, la resta, multiplicación, división, división entera,
17
+
18
+ 00:00:19.715 --> 00:00:21.795
19
+ que son los operadores matemáticos de toda la
20
+
21
+ 00:00:21.795 --> 00:00:24.275
22
+ vida que, seguramente, si realizaste el curso de
23
+
24
+ 00:00:24.275 --> 00:00:28.275
25
+ programación básica, ya conoces. Además de estos, existen
26
+
27
+ 00:00:28.275 --> 00:00:31.160
28
+ los de comparación, por ejemplo, el doble igual
29
+
30
+ 00:00:31.160 --> 00:00:34.200
31
+ nos ayuda a verificar si dos valores tienen,
32
+
33
+ 00:00:34.200 --> 00:00:37.239
34
+ pues, una exactitud de igualdad, es decir, si
35
+
36
+ 00:00:37.239 --> 00:00:39.640
37
+ dos es igual a dos o si un
38
+
39
+ 00:00:39.640 --> 00:00:42.440
40
+ número es igual a otro, sea el número
41
+
42
+ 00:00:42.440 --> 00:00:46.015
43
+ que sea, si si usáramos variables, y otros
44
+
45
+ 00:00:46.015 --> 00:00:48.975
46
+ tipos de comparadores, por ejemplo, menor que, mayor
47
+
48
+ 00:00:48.975 --> 00:00:54.435
49
+ que, diferente de, etcétera. La asignación nos permite
50
+
51
+ 00:00:55.455 --> 00:00:57.055
52
+ añadirle una nuevo un nuevo valor a una
53
+
54
+ 00:00:57.055 --> 00:00:59.500
55
+ variable a la vez que realizamos una operación
56
+
57
+ 00:00:59.500 --> 00:01:03.040
58
+ matemática. Por ejemplo, tenemos más igual, menos igual,
59
+
60
+ 00:01:03.100 --> 00:01:05.660
61
+ que lo que harían es permitirnos sumarle un
62
+
63
+ 00:01:05.660 --> 00:01:08.220
64
+ número a la variable actual y almacenar el
65
+
66
+ 00:01:08.220 --> 00:01:10.479
67
+ resultado en la misma variable que le indicamos.
68
+
69
+ 00:01:12.155 --> 00:01:14.635
70
+ Adicionalmente, tenemos los operadores lógicos, que son los
71
+
72
+ 00:01:14.635 --> 00:01:19.295
73
+ que realizan operaciones booleanas, como ant, or o
74
+
75
+ 00:01:19.295 --> 00:01:24.175
76
+ not, que es una negación. También tenemos otros
77
+
78
+ 00:01:24.370 --> 00:01:27.170
79
+ tipos de operadores, enzimas más, como size off
80
+
81
+ 00:01:27.170 --> 00:01:29.869
82
+ o los operadores que hemos estado utilizando con
83
+
84
+ 00:01:30.130 --> 00:01:32.770
85
+ el c out de io stream para la
86
+
87
+ 00:01:32.770 --> 00:01:36.610
88
+ asignación de streams. En este caso, vamos a
89
+
90
+ 00:01:36.610 --> 00:01:39.330
91
+ hablar sobre size off y sobre algunos de
92
+
93
+ 00:01:39.330 --> 00:01:43.165
94
+ los operadores aritméticos y tal vez algún otro.
95
+
96
+ 00:01:44.505 --> 00:01:47.465
97
+ Vamos a ver un ejemplo de código. Como
98
+
99
+ 00:01:47.465 --> 00:01:49.465
100
+ puedes ver, ya tengo preparado para ti la
101
+
102
+ 00:01:49.465 --> 00:01:51.384
103
+ base de código que vamos a estar utilizando
104
+
105
+ 00:01:51.384 --> 00:01:54.520
106
+ en todos los ejercicios de este curso. Tenemos
107
+
108
+ 00:01:54.520 --> 00:01:57.080
109
+ la librería de iStream, la función main y
110
+
111
+ 00:01:57.080 --> 00:01:59.960
112
+ el espacio de nombres estándar. Vamos a comenzar
113
+
114
+ 00:01:59.960 --> 00:02:03.259
115
+ a realizar nuestros ejercicios de operadores. En primer
116
+
117
+ 00:02:03.360 --> 00:02:05.720
118
+ lugar, vamos a declarar, tal vez, un par
119
+
120
+ 00:02:05.720 --> 00:02:08.199
121
+ de variables para poder realizar las operaciones con
122
+
123
+ 00:02:08.199 --> 00:02:11.505
124
+ ellas. Para probar los operadores aritméticos, vamos a
125
+
126
+ 00:02:11.505 --> 00:02:14.625
127
+ necesitar realizar operaciones entre números, por lo tanto,
128
+
129
+ 00:02:14.625 --> 00:02:18.385
130
+ vamos a declarar dos números. Por ejemplo, vamos
131
+
132
+ 00:02:18.385 --> 00:02:21.585
133
+ a crear la variable a, que contiene el
134
+
135
+ 00:02:21.585 --> 00:02:25.760
136
+ número dos, y vamos a crear la variable
137
+
138
+ 00:02:25.760 --> 00:02:31.120
139
+ b, que contiene el número tres. Vamos a
140
+
141
+ 00:02:31.120 --> 00:02:33.600
142
+ realizar una salida de los datos para poder
143
+
144
+ 00:02:33.600 --> 00:02:36.340
145
+ visualizar cuál es el resultado de nuestras operaciones
146
+
147
+ 00:02:36.685 --> 00:02:39.004
148
+ después de ejecutar nuestro programa, así que vamos
149
+
150
+ 00:02:39.004 --> 00:02:42.364
151
+ a utilizar la funcionalidad de COUT que nos
152
+
153
+ 00:02:42.364 --> 00:02:45.724
154
+ ofrece iOStream, y ahí vamos a mostrar los
155
+
156
+ 00:02:45.724 --> 00:02:49.325
157
+ resultados de nuestras operaciones. No olvidemos nunca poner
158
+
159
+ 00:02:49.325 --> 00:02:51.200
160
+ el punto y coma después de cada orden
161
+
162
+ 00:02:51.200 --> 00:02:54.520
163
+ que le damos a la computadora. Ahora, vamos
164
+
165
+ 00:02:54.520 --> 00:02:56.740
166
+ a hablar sobre un par de operadores aritméticos.
167
+
168
+ 00:02:57.200 --> 00:02:59.840
169
+ Por ejemplo, el operador de más. El operador
170
+
171
+ 00:02:59.840 --> 00:03:02.560
172
+ de más, simplemente, como su nombre lo dice,
173
+
174
+ 00:03:02.560 --> 00:03:05.254
175
+ suma a los dos números que le entreguemos.
176
+
177
+ 00:03:05.395 --> 00:03:07.235
178
+ Por ejemplo, si queremos el resultado de la
179
+
180
+ 00:03:07.235 --> 00:03:11.235
181
+ suma de dos más tres, sería cinco, podemos
182
+
183
+ 00:03:11.235 --> 00:03:15.555
184
+ sumar a más b. Esta sería la forma
185
+
186
+ 00:03:15.555 --> 00:03:19.319
187
+ de hacerlo. Esta operación, en este caso, va
188
+
189
+ 00:03:19.319 --> 00:03:22.680
190
+ a realizar la suma, va a obtener el
191
+
192
+ 00:03:22.680 --> 00:03:25.640
193
+ valor resultante y lo va a mostrar a
194
+
195
+ 00:03:25.640 --> 00:03:29.879
196
+ la salida en la terminal. Voy a utilizar
197
+
198
+ 00:03:29.879 --> 00:03:36.675
199
+ f seis para compilar y ejecutar. Y ahí
200
+
201
+ 00:03:36.675 --> 00:03:39.015
202
+ está, ahora tenemos el valor cinco como salida
203
+
204
+ 00:03:39.075 --> 00:03:41.795
205
+ de nuestro programa. Como puedes ver, la operación
206
+
207
+ 00:03:41.795 --> 00:03:45.095
208
+ se realizó correctamente. Algo que es importante que
209
+
210
+ 00:03:45.395 --> 00:03:48.200
211
+ notes es que la operación de suma de
212
+
213
+ 00:03:48.200 --> 00:03:50.380
214
+ a más b se realizó antes del c
215
+
216
+ 00:03:50.680 --> 00:03:53.000
217
+ out, pero no necesariamente tendría que estar ahí,
218
+
219
+ 00:03:53.000 --> 00:03:55.959
220
+ podríamos realizar la operación y asignarse la otra
221
+
222
+ 00:03:55.959 --> 00:03:58.680
223
+ variable. Por ejemplo, si yo tomo este valor
224
+
225
+ 00:03:58.680 --> 00:04:04.995
226
+ de aquí, lo voy a cortar. Bueno, lo
227
+
228
+ 00:04:04.995 --> 00:04:09.474
229
+ voy a copiar, y lo voy a pegar
230
+
231
+ 00:04:09.474 --> 00:04:12.515
232
+ en una nueva variable que se llame c
233
+
234
+ 00:04:12.515 --> 00:04:18.820
235
+ tal vez. Bueno, creo que no no se
236
+
237
+ 00:04:18.820 --> 00:04:20.660
238
+ cortó y copió bien, pero lo voy a
239
+
240
+ 00:04:20.660 --> 00:04:25.700
241
+ poner manualmente, a más b. Entonces, yo podría
242
+
243
+ 00:04:25.700 --> 00:04:28.445
244
+ simplemente imprimir el valor de c a la
245
+
246
+ 00:04:28.445 --> 00:04:31.546
247
+ salida de c out. Con esto, yo estoy
248
+
249
+ 00:04:31.546 --> 00:04:34.125
250
+ realizando la operación en dos pasos. En primer
251
+
252
+ 00:04:34.125 --> 00:04:37.405
253
+ lugar, realizo la suma, obtengo su resultado, lo
254
+
255
+ 00:04:37.405 --> 00:04:39.405
256
+ almaceno en en la variable c, que es
257
+
258
+ 00:04:39.405 --> 00:04:41.485
259
+ una nueva variable, y luego esa es la
260
+
261
+ 00:04:41.485 --> 00:04:43.520
262
+ que muestro. ¿A qué voy con todo esto?
263
+
264
+ 00:04:43.520 --> 00:04:46.400
265
+ Que en tus programas vas a poder utilizar
266
+
267
+ 00:04:46.400 --> 00:04:49.440
268
+ todas las funcionalidades combinadas. Si tú aprendiste a
269
+
270
+ 00:04:49.440 --> 00:04:52.240
271
+ utilizar la creación de variables, el uso de
272
+
273
+ 00:04:52.240 --> 00:04:55.140
274
+ operadores y también cómo funciona SEOut, esos conocimientos
275
+
276
+ 00:04:55.280 --> 00:04:57.040
277
+ tú los puedes combinar, como lo hemos estado
278
+
279
+ 00:04:57.040 --> 00:04:59.505
280
+ haciendo, y con todas las demás lecciones que
281
+
282
+ 00:04:59.505 --> 00:05:01.905
283
+ vamos a poder realizar en el curso, también
284
+
285
+ 00:05:01.905 --> 00:05:03.745
286
+ quiero que sepas que todas esas cosas se
287
+
288
+ 00:05:03.745 --> 00:05:07.104
289
+ pueden combinar entre sí. Y también es bueno
290
+
291
+ 00:05:07.104 --> 00:05:09.264
292
+ que entiendas que estas operaciones, como la de
293
+
294
+ 00:05:09.264 --> 00:05:12.216
295
+ suma, funcionan de forma independiente, no necesitarías utilizar
296
+
297
+ 00:05:12.223 --> 00:05:14.830
298
+ c out para realizar una suma, por ejemplo.
299
+
300
+ 00:05:15.610 --> 00:05:17.710
301
+ Entonces, ya tenemos el ejemplo de la suma,
302
+
303
+ 00:05:17.770 --> 00:05:20.330
304
+ ¿qué otras operaciones podemos realizar? Las operaciones que
305
+
306
+ 00:05:20.330 --> 00:05:24.855
307
+ ya conoces, sumas, restas, multiplicaciones, divisiones. Por ejemplo,
308
+
309
+ 00:05:24.855 --> 00:05:27.255
310
+ si yo quiero realizar una multiplicación de a
311
+
312
+ 00:05:27.255 --> 00:05:31.735
313
+ por b, podría hacerlo. Simplemente tengo que ejecutar
314
+
315
+ 00:05:31.735 --> 00:05:33.835
316
+ mi programa una vez más y ahora tengo
317
+
318
+ 00:05:34.375 --> 00:05:36.375
319
+ el número seis, que es el resultado de
320
+
321
+ 00:05:36.375 --> 00:05:39.789
322
+ multiplicar, dos por tres. De la misma manera,
323
+
324
+ 00:05:39.789 --> 00:05:44.930
325
+ podría realizar todas las demás operaciones aritméticas. Existen
326
+
327
+ 00:05:44.990 --> 00:05:47.389
328
+ otro tipo de operadores, como vimos, como podrían
329
+
330
+ 00:05:47.389 --> 00:05:51.229
331
+ ser los operadores relacionales. Los operadores relacionales nos
332
+
333
+ 00:05:51.229 --> 00:05:53.944
334
+ van a dar valores de verdadero o falso
335
+
336
+ 00:05:53.944 --> 00:05:57.145
337
+ dependiendo si esa condición es real. Por ejemplo,
338
+
339
+ 00:05:57.145 --> 00:05:59.224
340
+ si queremos relacionar el número a con el
341
+
342
+ 00:05:59.224 --> 00:06:03.245
343
+ número b por medio de compararlos, podríamos pensar
344
+
345
+ 00:06:03.465 --> 00:06:04.745
346
+ en si es mayor que o si es
347
+
348
+ 00:06:04.745 --> 00:06:07.560
349
+ menor que o si es igual, entonces podríamos
350
+
351
+ 00:06:07.560 --> 00:06:10.680
352
+ hacerlo de la siguiente manera. Podríamos utilizar el
353
+
354
+ 00:06:10.680 --> 00:06:15.319
355
+ operador menor que, por ejemplo, para comparar si
356
+
357
+ 00:06:15.319 --> 00:06:17.419
358
+ el valor de a es menor que b.
359
+
360
+ 00:06:17.800 --> 00:06:21.175
361
+ Si esto es verdadero, la el valor de
362
+
363
+ 00:06:21.175 --> 00:06:23.735
364
+ c ahora sería un valor booleano, por lo
365
+
366
+ 00:06:23.735 --> 00:06:26.135
367
+ tanto, vamos a cambiar el tipo de dato
368
+
369
+ 00:06:26.135 --> 00:06:28.775
370
+ de la variable c para que respetemos el
371
+
372
+ 00:06:28.775 --> 00:06:30.375
373
+ tipo de valor que nos va a devolver
374
+
375
+ 00:06:30.375 --> 00:06:35.070
376
+ esa operación. Y aquí estaríamos cambiando por bul.
377
+
378
+ 00:06:35.870 --> 00:06:38.450
379
+ Con esto, nuestra variable c ya puede almacenar
380
+
381
+ 00:06:38.670 --> 00:06:41.630
382
+ el resultado de este tipo de operaciones y
383
+
384
+ 00:06:41.630 --> 00:06:43.950
385
+ nos va a almacenar, en este caso, tenemos
386
+
387
+ 00:06:43.950 --> 00:06:46.110
388
+ que dos es menor que tres, por lo
389
+
390
+ 00:06:46.110 --> 00:06:50.355
391
+ tanto, debería devolvernos true o verdadero. Vamos a
392
+
393
+ 00:06:50.355 --> 00:06:57.555
394
+ ejecutar el programa. Listo. Ahora, como puedes ver,
395
+
396
+ 00:06:57.555 --> 00:06:59.315
397
+ nos está mostrando un número uno. ¿Qué es
398
+
399
+ 00:06:59.315 --> 00:07:01.875
400
+ lo que pasó aquí? Bueno, muy simple. Para
401
+
402
+ 00:07:01.875 --> 00:07:04.590
403
+ la computadora, en lenguajes de programación de bajo
404
+
405
+ 00:07:04.590 --> 00:07:07.790
406
+ nivel, como seis e más más, el verdadero
407
+
408
+ 00:07:07.790 --> 00:07:10.110
409
+ va a ser equivalente a decir un uno
410
+
411
+ 00:07:10.110 --> 00:07:11.970
412
+ en binario y el falso va a ser
413
+
414
+ 00:07:12.190 --> 00:07:14.590
415
+ equivalente a decir un cero en binario. Por
416
+
417
+ 00:07:14.590 --> 00:07:18.255
418
+ lo tanto, esta operación se realizó correctamente. Del
419
+
420
+ 00:07:18.255 --> 00:07:20.495
421
+ al realizar, pues, la operación y darnos true,
422
+
423
+ 00:07:20.495 --> 00:07:23.295
424
+ pues, nos muestra el número uno, porque c
425
+
426
+ 00:07:23.295 --> 00:07:25.935
427
+ out no puede interpretar si se trata de
428
+
429
+ 00:07:25.935 --> 00:07:28.355
430
+ una variable booleana o de una variable numérica
431
+
432
+ 00:07:28.815 --> 00:07:31.875
433
+ de forma tan fácil. Eso lo podríamos corregir
434
+
435
+ 00:07:32.015 --> 00:07:35.419
436
+ después, sin embargo, este es un valor, es
437
+
438
+ 00:07:35.419 --> 00:07:39.340
439
+ un resultado correcto que esperaríamos. Ahora, ¿qué pasaría
440
+
441
+ 00:07:39.340 --> 00:07:42.380
442
+ si yo hago la operación contraria? Si yo
443
+
444
+ 00:07:42.380 --> 00:07:45.015
445
+ quiero verificar si a es mayor que b,
446
+
447
+ 00:07:45.415 --> 00:07:47.895
448
+ esto nos daría falso, porque estaríamos diciendo que
449
+
450
+ 00:07:47.895 --> 00:07:49.975
451
+ dos es mayor que tres, lo cual, pues,
452
+
453
+ 00:07:49.975 --> 00:07:52.135
454
+ es falso. Esto se va a almacenar el
455
+
456
+ 00:07:52.135 --> 00:07:53.975
457
+ c y cuando lo mostremos, vamos a volver
458
+
459
+ 00:07:53.975 --> 00:07:56.215
460
+ a ejecutar nuestro programa, pues, nos va a
461
+
462
+ 00:07:56.215 --> 00:07:58.135
463
+ dar un cero, que es decir, es un
464
+
465
+ 00:07:58.135 --> 00:08:02.610
466
+ valor falso. Así funcionan los comparadores, que son
467
+
468
+ 00:08:02.610 --> 00:08:05.330
469
+ otro tipo de operador que tenemos disponible en
470
+
471
+ 00:08:05.330 --> 00:08:07.729
472
+ C más más y que seguramente habrás utilizado
473
+
474
+ 00:08:07.729 --> 00:08:11.570
475
+ si ya tienes nociones de programación básica. Otro
476
+
477
+ 00:08:11.570 --> 00:08:14.050
478
+ tipo de operadores que puedes aprender son los
479
+
480
+ 00:08:14.050 --> 00:08:16.294
481
+ operadores de asignación, que lo que van a
482
+
483
+ 00:08:16.294 --> 00:08:18.595
484
+ hacer es asignarle un nuevo valor a una
485
+
486
+ 00:08:18.655 --> 00:08:22.095
487
+ variable a partir de el valor anterior más
488
+
489
+ 00:08:22.095 --> 00:08:24.354
490
+ un cambio que tú le quieras agregar. Por
491
+
492
+ 00:08:24.735 --> 00:08:27.775
493
+ ejemplo, si yo tengo la letra a, la
494
+
495
+ 00:08:27.775 --> 00:08:30.580
496
+ variable a, que contiene el valor dos, yo
497
+
498
+ 00:08:30.580 --> 00:08:32.919
499
+ puedo hacer que ahora su valor sea tres,
500
+
501
+ 00:08:33.220 --> 00:08:36.200
502
+ incrementándola en uno. Por ejemplo, si yo creo
503
+
504
+ 00:08:36.500 --> 00:08:39.460
505
+ para almacenar mi resultado esta variable c, le
506
+
507
+ 00:08:39.460 --> 00:08:44.915
508
+ asigno a más igual uno, le estoy diciendo
509
+
510
+ 00:08:44.915 --> 00:08:49.015
511
+ que quiero que la variable a más uno,
512
+
513
+ 00:08:49.235 --> 00:08:50.995
514
+ eso va a ser cinco, va a incrementar
515
+
516
+ 00:08:50.995 --> 00:08:53.715
517
+ y se va a almacenar en c. Esto
518
+
519
+ 00:08:53.715 --> 00:08:56.275
520
+ es una forma resumida de hacerlo, porque yo
521
+
522
+ 00:08:56.275 --> 00:08:59.949
523
+ podría simplemente reasignar a la variable a de
524
+
525
+ 00:08:59.949 --> 00:09:02.190
526
+ esta forma, ¿no? Yo podría decirle cuál es
527
+
528
+ 00:09:02.190 --> 00:09:07.329
529
+ el valor de a y súmale uno, ¿ok?
530
+
531
+ 00:09:08.750 --> 00:09:10.750
532
+ Esto evita, en primer lugar, pues que tengamos
533
+
534
+ 00:09:10.750 --> 00:09:13.585
535
+ que utilizar otra variable como c para realizar
536
+
537
+ 00:09:13.585 --> 00:09:17.265
538
+ nuestra operación y almacenar su resultado, y al
539
+
540
+ 00:09:17.265 --> 00:09:18.945
541
+ mismo tiempo nos damos cuenta que se repite
542
+
543
+ 00:09:18.945 --> 00:09:20.705
544
+ dos veces la variable a. Entonces, lo que
545
+
546
+ 00:09:20.705 --> 00:09:23.153
547
+ nos permite hacer es esta operación de suma
548
+
549
+ 00:09:23.153 --> 00:09:25.655
550
+ que vemos aquí y esta operación de igualdad
551
+
552
+ 00:09:25.655 --> 00:09:30.640
553
+ que vemos aquí en una sola operación. De
554
+
555
+ 00:09:30.640 --> 00:09:33.040
556
+ manera que podríamos terminar con esta línea de
557
+
558
+ 00:09:33.040 --> 00:09:35.280
559
+ código y ese es la operación que vamos
560
+
561
+ 00:09:35.280 --> 00:09:37.560
562
+ a realizar. Vamos a tomar el valor original
563
+
564
+ 00:09:37.560 --> 00:09:40.155
565
+ de a, vamos a asignarle el valor de
566
+
567
+ 00:09:40.395 --> 00:09:42.715
568
+ anterior de a más uno, y ese va
569
+
570
+ 00:09:42.715 --> 00:09:44.875
571
+ a ser el nuevo valor de a. Vamos
572
+
573
+ 00:09:44.875 --> 00:09:51.835
574
+ a ejecutarlo con f seis. Ok, ahora vemos
575
+
576
+ 00:09:51.835 --> 00:09:55.190
577
+ que nuestra variable a terminó valiendo tres, es
578
+
579
+ 00:09:55.190 --> 00:09:57.990
580
+ decir, originalmente valía dos, le incrementó uno, y
581
+
582
+ 00:09:57.990 --> 00:10:00.470
583
+ sobre la misma variable a guardó el resultado
584
+
585
+ 00:10:00.470 --> 00:10:05.029
586
+ que es tres. Existen otros operadores, por ejemplo,
587
+
588
+ 00:10:05.029 --> 00:10:07.845
589
+ los operadores como size off, que son operadores
590
+
591
+ 00:10:08.705 --> 00:10:10.465
592
+ especiales dentro de C más más que nos
593
+
594
+ 00:10:10.465 --> 00:10:13.665
595
+ permiten, pues, conocer cosas sobre las variables. En
596
+
597
+ 00:10:13.665 --> 00:10:16.545
598
+ este caso, size off nos permite obtener el
599
+
600
+ 00:10:16.545 --> 00:10:18.785
601
+ tamaño en bytes de un valor, de un
602
+
603
+ 00:10:18.785 --> 00:10:22.145
604
+ dato. Por ejemplo, si tenemos el la variable
605
+
606
+ 00:10:22.145 --> 00:10:24.680
607
+ b, que es un tipo entero, sabemos que
608
+
609
+ 00:10:24.680 --> 00:10:26.760
610
+ en dependiendo del sistema operativo y de la
611
+
612
+ 00:10:26.760 --> 00:10:29.420
613
+ computadora puede variar, pero en este caso podrían
614
+
615
+ 00:10:29.480 --> 00:10:32.680
616
+ ser dos bytes, cuatro bytes, dependiendo de el
617
+
618
+ 00:10:32.680 --> 00:10:36.140
619
+ sistema operativo. Esto es lo que nos va
620
+
621
+ 00:10:36.360 --> 00:10:38.735
622
+ a devolver el operador size off, y la
623
+
624
+ 00:10:38.735 --> 00:10:42.975
625
+ forma de utilizarlo es simplemente diciéndole a nuestro
626
+
627
+ 00:10:42.975 --> 00:10:46.654
628
+ compilador que queremos obtener el tamaño de esa
629
+
630
+ 00:10:46.654 --> 00:10:50.815
631
+ variable. Por ejemplo, si yo tengo size off
632
+
633
+ 00:10:50.815 --> 00:11:00.260
634
+ a, de esta manera, le estoy pidiendo el
635
+
636
+ 00:11:00.260 --> 00:11:03.940
637
+ valor del tamaño en bytes de la variable
638
+
639
+ 00:11:03.940 --> 00:11:06.995
640
+ a para que lo muestre en pantalla. Vamos
641
+
642
+ 00:11:06.995 --> 00:11:12.435
643
+ a ejecutarlo. Y me está diciendo que la
644
+
645
+ 00:11:12.435 --> 00:11:15.955
646
+ variable a ocupa cuatro bytes de tamaño. ¿Esto
647
+
648
+ 00:11:15.955 --> 00:11:17.875
649
+ por qué nos es útil? Bueno, porque size
650
+
651
+ 00:11:17.875 --> 00:11:20.200
652
+ off nos va a permitir realizar algunas operaciones,
653
+
654
+ 00:11:20.260 --> 00:11:22.820
655
+ por ejemplo, con listas. Si yo quisiera saber
656
+
657
+ 00:11:22.820 --> 00:11:26.180
658
+ cuántos elementos tiene una lista, podría utilizar size
659
+
660
+ 00:11:26.180 --> 00:11:29.020
661
+ off y una operación de división para obtener
662
+
663
+ 00:11:29.020 --> 00:11:31.620
664
+ cuántos elementos tiene de forma inteligente. Vamos a
665
+
666
+ 00:11:31.620 --> 00:11:33.315
667
+ ver el ejemplo de cómo se realiza esto.
668
+
669
+ 00:11:33.315 --> 00:11:35.815
670
+ Si yo tuviera una lista, por ejemplo, inspirándonos
671
+
672
+ 00:11:35.955 --> 00:11:38.115
673
+ en el ejemplo de la clase anterior, una
674
+
675
+ 00:11:38.115 --> 00:11:44.195
676
+ lista de edades. Yo tengo la variable edades
677
+
678
+ 00:11:44.195 --> 00:11:47.680
679
+ de tipo entero, le indico con corchetes que
680
+
681
+ 00:11:47.680 --> 00:11:49.360
682
+ va a ser una variable que va a
683
+
684
+ 00:11:49.360 --> 00:11:52.160
685
+ almacenar una lista de valores, y con llaves
686
+
687
+ 00:11:52.160 --> 00:11:54.340
688
+ puedo indicar la lista de valores que tiene
689
+
690
+ 00:11:54.560 --> 00:11:59.600
691
+ adentro. Por ejemplo, puedo tener veinticuatro, cuarenta y
692
+
693
+ 00:11:59.600 --> 00:12:04.295
694
+ siete. Si yo quisiera saber cuántos elementos tiene
695
+
696
+ 00:12:04.295 --> 00:12:07.095
697
+ esta lista, no siempre es fácil en C
698
+
699
+ 00:12:07.095 --> 00:12:09.415
700
+ más más obtener ese tamaño, sin embargo, un
701
+
702
+ 00:12:09.415 --> 00:12:12.135
703
+ truco que podemos hacer es tomar el número
704
+
705
+ 00:12:12.135 --> 00:12:15.319
706
+ de el del tamaño total de la lista
707
+
708
+ 00:12:15.319 --> 00:12:18.120
709
+ y dividirlo entre cuánto mide cada uno de
710
+
711
+ 00:12:18.120 --> 00:12:20.839
712
+ sus elementos que tiene adentro. Por ejemplo, si
713
+
714
+ 00:12:20.839 --> 00:12:25.995
715
+ tenemos tres elementos, nuestra lista mediría doce bytes,
716
+
717
+ 00:12:26.455 --> 00:12:28.455
718
+ y si lo dividimos entre los cuatro bytes
719
+
720
+ 00:12:28.455 --> 00:12:31.595
721
+ que tiene cada elemento, sabríamos que tiene tres
722
+
723
+ 00:12:32.135 --> 00:12:35.895
724
+ elementos. La forma rápida de hacerlo sería size
725
+
726
+ 00:12:35.895 --> 00:12:43.340
727
+ off, la variable edades, y eso dividirlo entre
728
+
729
+ 00:12:43.340 --> 00:12:46.060
730
+ el size off de la variable de un
731
+
732
+ 00:12:46.060 --> 00:12:48.940
733
+ número. En este caso, podríamos utilizar la letra
734
+
735
+ 00:12:48.940 --> 00:12:50.780
736
+ a, ya que también es tipo entero y
737
+
738
+ 00:12:50.780 --> 00:12:53.340
739
+ van a tener el mismo tamaño que cualquier
740
+
741
+ 00:12:53.340 --> 00:12:56.485
742
+ otro número, o podríamos utilizar directamente un valor
743
+
744
+ 00:12:56.485 --> 00:12:59.785
745
+ de la lista de edades. Por ejemplo, acceder
746
+
747
+ 00:12:59.845 --> 00:13:02.084
748
+ a cualquiera de los valores, supongamos el valor
749
+
750
+ 00:13:02.084 --> 00:13:04.644
751
+ cero, que sería el número veinticuatro. Va a
752
+
753
+ 00:13:04.644 --> 00:13:07.685
754
+ obtener cuántos bytes se necesitan para almacenar el
755
+
756
+ 00:13:07.685 --> 00:13:10.180
757
+ número veinticuatro y ese va a ser el
758
+
759
+ 00:13:10.180 --> 00:13:13.160
760
+ resultado de ese size off. Entonces, dividiríamos, dividiríamos
761
+
762
+ 00:13:13.460 --> 00:13:15.700
763
+ los doce bytes que miden total la lista
764
+
765
+ 00:13:15.700 --> 00:13:19.220
766
+ de edades entre los cuatro bytes que mide
767
+
768
+ 00:13:19.220 --> 00:13:22.305
769
+ solamente el primer valor de la lista. Si
770
+
771
+ 00:13:22.305 --> 00:13:25.904
772
+ yo ejecuto y muestro el resultado, obtengo que
773
+
774
+ 00:13:25.904 --> 00:13:29.105
775
+ tiene tres elementos. Ahora que ya sabes cómo
776
+
777
+ 00:13:29.105 --> 00:13:31.345
778
+ funcionan los operadores en C más más y
779
+
780
+ 00:13:31.345 --> 00:13:33.550
781
+ que viste que existen muchos otros, te reto
782
+
783
+ 00:13:33.550 --> 00:13:36.030
784
+ a aprender a utilizarlos y que nos pongas
785
+
786
+ 00:13:36.030 --> 00:13:38.210
787
+ en la sección de comentarios qué otros operadores
788
+
789
+ 00:13:38.350 --> 00:13:41.150
790
+ existen y que realices experimentos con ellos para
791
+
792
+ 00:13:41.150 --> 00:13:43.470
793
+ que aprendas mucho más y se te quede
794
+
795
+ 00:13:43.470 --> 00:13:46.110
796
+ mucho más claro cómo funcionan. Nos vemos en
797
+
798
+ 00:13:46.110 --> 00:13:47.170
799
+ la próxima clase.
subir/Curso de C Básico/03-Conceptos básicos/05-Resumen.html ADDED
The diff for this file is too large to render. See raw diff
 
subir/Curso de C Básico/03-Conceptos básicos/05-operadores.zip ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c34fb276691456e6c686b0dabee3babdadf995e9af55ecd2597cd81c86a4648d
3
+ size 2295
subir/Curso de C Básico/03-Conceptos básicos/06-Manejo de Entrada y Salida de Datos con IOStream en C.mp4 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:be73d1047e7be67978b094770d73952513456f172f06590f6a16a7ec764f958e
3
+ size 78297010
subir/Curso de C Básico/03-Conceptos básicos/06-Manejo de Entrada y Salida de Datos con IOStream en C.vtt ADDED
@@ -0,0 +1,418 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ WEBVTT
2
+
3
+ 00:00:03.040 --> 00:00:05.120
4
+ Un concepto que hemos estado utilizando, pero que
5
+
6
+ 00:00:05.120 --> 00:00:07.759
7
+ no hemos visto correctamente, es el de entrada
8
+
9
+ 00:00:07.759 --> 00:00:10.320
10
+ y salida de datos, el uso de la
11
+
12
+ 00:00:10.320 --> 00:00:14.115
13
+ librería IOStream. Vamos al código. Como puedes ver
14
+
15
+ 00:00:14.115 --> 00:00:16.114
16
+ en pantalla, aquí te tengo de nuevo el
17
+
18
+ 00:00:16.114 --> 00:00:19.555
19
+ código base de nuestros ejercicios en clase. En
20
+
21
+ 00:00:19.555 --> 00:00:22.035
22
+ primer lugar, la línea número uno tiene la
23
+
24
+ 00:00:22.035 --> 00:00:26.410
25
+ librería Pero esta librería, ¿qué significa? Bueno, a
26
+
27
+ 00:00:26.410 --> 00:00:29.050
28
+ grandes rasgos, lo que nos permite es realizar
29
+
30
+ 00:00:29.050 --> 00:00:30.830
31
+ el manejo de entrada y salida de datos.
32
+
33
+ 00:00:31.130 --> 00:00:33.370
34
+ ¿Cómo lo hace? Por medio de streams, como
35
+
36
+ 00:00:33.370 --> 00:00:35.850
37
+ lo menciona ahí, es decir, un stream es
38
+
39
+ 00:00:35.850 --> 00:00:38.830
40
+ como un flujo de datos que van moviéndose,
41
+
42
+ 00:00:39.275 --> 00:00:41.515
43
+ pues, como un flujo de información, como los
44
+
45
+ 00:00:41.515 --> 00:00:46.815
46
+ streamers de video, ¿no? Entonces, este esta librería
47
+
48
+ 00:00:46.875 --> 00:00:48.875
49
+ de stream lo que nos da es esa
50
+
51
+ 00:00:48.875 --> 00:00:52.235
52
+ capacidad de streamear datos a través de la
53
+
54
+ 00:00:52.235 --> 00:00:54.630
55
+ entrada y salida, en este caso, de nuestra
56
+
57
+ 00:00:54.630 --> 00:00:58.090
58
+ terminal de comandos a nivel de texto, pero
59
+
60
+ 00:00:58.390 --> 00:01:01.590
61
+ incluso nos permitiría una librería hermana a a
62
+
63
+ 00:01:01.590 --> 00:01:04.870
64
+ stream que, pues, permita manejo de streams, tal
65
+
66
+ 00:01:04.870 --> 00:01:07.990
67
+ vez hacerlo con archivos de cualquier tipo de
68
+
69
+ 00:01:07.990 --> 00:01:10.295
70
+ formato, por ejemplo, de audio o de video.
71
+
72
+ 00:01:10.915 --> 00:01:13.895
73
+ De esta manera, el sistema operativo se comunica
74
+
75
+ 00:01:14.275 --> 00:01:16.995
76
+ con nuestro programa en C más más y
77
+
78
+ 00:01:16.995 --> 00:01:19.075
79
+ recibe esos datos, y es como los puede
80
+
81
+ 00:01:19.075 --> 00:01:21.415
82
+ mostrar en pantalla a través de nuestra terminal.
83
+
84
+ 00:01:22.560 --> 00:01:25.840
85
+ Tiene dos principales funcionalidades, la primera ya la
86
+
87
+ 00:01:25.840 --> 00:01:29.119
88
+ vimos, que es c out, que se escribe
89
+
90
+ 00:01:29.119 --> 00:01:32.479
91
+ de la siguiente manera, c out, y a
92
+
93
+ 00:01:32.479 --> 00:01:35.460
94
+ continuación se ponen dos símbolos de menor que,
95
+
96
+ 00:01:35.840 --> 00:01:38.865
97
+ de esta forma. Estos símbolos lo que representan
98
+
99
+ 00:01:39.085 --> 00:01:41.485
100
+ para C más más es un operador, de
101
+
102
+ 00:01:41.485 --> 00:01:44.545
103
+ hecho. La única diferencia es que este operador
104
+
105
+ 00:01:44.924 --> 00:01:48.284
106
+ está escrito para que iOsTime lo utilice como
107
+
108
+ 00:01:48.284 --> 00:01:51.744
109
+ una forma de entrar datos hacia la terminal.
110
+
111
+ 00:01:51.884 --> 00:01:54.650
112
+ Es decir, cuando yo escribo aquí mi hola
113
+
114
+ 00:01:54.650 --> 00:02:00.970
115
+ mundo de esta forma, hola mundo, lo que
116
+
117
+ 00:02:00.970 --> 00:02:03.290
118
+ le estoy diciendo a la computadora es, toma
119
+
120
+ 00:02:03.290 --> 00:02:06.110
121
+ cada una de estas letras y veslas mandando
122
+
123
+ 00:02:06.490 --> 00:02:08.590
124
+ hacia la salida de la terminal de comandos.
125
+
126
+ 00:02:08.835 --> 00:02:10.595
127
+ Lo que haría primero es tomar la letra
128
+
129
+ 00:02:10.595 --> 00:02:13.555
130
+ h y mostrarla, luego la letra o, y
131
+
132
+ 00:02:13.555 --> 00:02:17.875
133
+ así secuencialmente. De esta forma, estamos streameando esta
134
+
135
+ 00:02:17.875 --> 00:02:21.315
136
+ cadena hacia la terminal. Pues, podemos hacer algo
137
+
138
+ 00:02:21.315 --> 00:02:24.420
139
+ muy similar para la entrada de datos. De
140
+
141
+ 00:02:24.420 --> 00:02:27.699
142
+ la misma manera que existe, si out, existe
143
+
144
+ 00:02:27.699 --> 00:02:31.480
145
+ c in. La forma de usarlo es con
146
+
147
+ 00:02:31.780 --> 00:02:35.780
148
+ escribiendo c in. La única diferencia es que
149
+
150
+ 00:02:35.780 --> 00:02:39.504
151
+ ahora las los símbolos van a ser de
152
+
153
+ 00:02:39.504 --> 00:02:42.625
154
+ mayor que, como una especie de flechita que
155
+
156
+ 00:02:42.625 --> 00:02:44.224
157
+ nos indica la dirección en la que el
158
+
159
+ 00:02:44.224 --> 00:02:47.345
160
+ stream sucede. ¿Y qué podemos hacer ahora con
161
+
162
+ 00:02:47.345 --> 00:02:49.745
163
+ esos datos de entrada? Pues almacenarlos en una
164
+
165
+ 00:02:49.745 --> 00:02:52.625
166
+ variable para después hacer algo con ellos. Por
167
+
168
+ 00:02:52.625 --> 00:02:55.430
169
+ ejemplo, supongamos que en lugar de un hola
170
+
171
+ 00:02:55.430 --> 00:02:57.110
172
+ mundo, yo estoy haciendo un programa que le
173
+
174
+ 00:02:57.110 --> 00:03:00.090
175
+ pide a un usuario cuál es su edad.
176
+
177
+ 00:03:00.390 --> 00:03:03.910
178
+ Entonces, le preguntaríamos algo así como, ¿cuál es
179
+
180
+ 00:03:03.910 --> 00:03:07.185
181
+ tu edad? O introduce tu edad, o simplemente
182
+
183
+ 00:03:07.285 --> 00:03:12.565
184
+ edad. De esta forma, le mostraríamos ese mensaje
185
+
186
+ 00:03:12.565 --> 00:03:14.645
187
+ en la terminal de comandos a el usuario
188
+
189
+ 00:03:14.645 --> 00:03:18.245
190
+ de nuestro programa. Ahora, para poder almacenar la
191
+
192
+ 00:03:18.245 --> 00:03:20.724
193
+ respuesta del usuario, vamos a necesitar primero crear
194
+
195
+ 00:03:20.724 --> 00:03:23.000
196
+ una variable. Por lo tanto, en la línea
197
+
198
+ 00:03:23.000 --> 00:03:24.840
199
+ número seis yo voy a agregar una variable
200
+
201
+ 00:03:24.840 --> 00:03:27.480
202
+ que contenga la edad del usuario y la
203
+
204
+ 00:03:27.480 --> 00:03:32.680
205
+ voy a inicializar con el valor cero. Ahora
206
+
207
+ 00:03:32.680 --> 00:03:36.385
208
+ que la variable existe, podemos asignarle nuevos valores
209
+
210
+ 00:03:36.444 --> 00:03:39.325
211
+ utilizando c in, y la forma sería simplemente
212
+
213
+ 00:03:39.325 --> 00:03:42.064
214
+ escribir la variable edad después del c in.
215
+
216
+ 00:03:42.525 --> 00:03:44.924
217
+ De esta forma, lo que va a suceder
218
+
219
+ 00:03:44.924 --> 00:03:47.485
220
+ es que el la terminal de comandos va
221
+
222
+ 00:03:47.485 --> 00:03:49.750
223
+ a recibir el dato, el sistema operativo se
224
+
225
+ 00:03:49.750 --> 00:03:52.530
226
+ lo va a streamear a nuestro programa y
227
+
228
+ 00:03:52.790 --> 00:03:55.210
229
+ va a recibirlo en nuestro programa para tenerlo
230
+
231
+ 00:03:55.670 --> 00:03:58.230
232
+ ahora en su propia memoria. Pero, ¿cómo yo
233
+
234
+ 00:03:58.230 --> 00:04:01.870
235
+ sé que realmente introduje una edad correcta? Pues,
236
+
237
+ 00:04:01.870 --> 00:04:04.150
238
+ a lo mejor puedo darle feedback feedback al
239
+
240
+ 00:04:04.150 --> 00:04:06.045
241
+ usuario de forma que le muestre yo, pues,
242
+
243
+ 00:04:06.045 --> 00:04:09.004
244
+ la edad que introdujo anteriormente. Entonces, yo podría
245
+
246
+ 00:04:09.004 --> 00:04:14.364
247
+ de nuevo hacer seout y decirle algo así
248
+
249
+ 00:04:14.364 --> 00:04:21.100
250
+ como tu edad es Y la forma en
251
+
252
+ 00:04:21.100 --> 00:04:24.720
253
+ que podemos unir los diferentes streams es siguiendo
254
+
255
+ 00:04:25.020 --> 00:04:28.780
256
+ utilizando, como habíamos visto, el símbolo de el
257
+
258
+ 00:04:28.780 --> 00:04:32.300
259
+ operador de stream. Entonces, lo que vamos a
260
+
261
+ 00:04:32.300 --> 00:04:34.555
262
+ hacer es tomar tu edad es, se lo
263
+
264
+ 00:04:34.555 --> 00:04:36.635
265
+ vamos a mandar a la pantalla, y luego
266
+
267
+ 00:04:36.635 --> 00:04:39.675
268
+ podemos meter la variable de edad de esta
269
+
270
+ 00:04:39.675 --> 00:04:41.595
271
+ forma, y también se lo mandamos a la
272
+
273
+ 00:04:41.595 --> 00:04:43.835
274
+ pantalla. Entonces, al final, lo que va a
275
+
276
+ 00:04:43.835 --> 00:04:45.275
277
+ aparecer, pues, es la edad que la persona
278
+
279
+ 00:04:45.275 --> 00:04:48.815
280
+ haya introducido durante la ejecución de el sein.
281
+
282
+ 00:04:49.300 --> 00:04:52.580
283
+ Vamos a ejecutarlo. En primer lugar, nos va
284
+
285
+ 00:04:52.580 --> 00:04:54.259
286
+ a aparecer una pregunta que nos va a
287
+
288
+ 00:04:54.259 --> 00:04:56.419
289
+ decir, edad o cuál es tu edad. En
290
+
291
+ 00:04:56.419 --> 00:04:58.660
292
+ este caso, me pregunta ahí, ¿cuál es la
293
+
294
+ 00:04:58.660 --> 00:05:01.875
295
+ edad? Supongamos que esta persona tiene dieciocho años.
296
+
297
+ 00:05:02.915 --> 00:05:06.515
298
+ Introduce el número dieciocho y pulsa enter. Y,
299
+
300
+ 00:05:06.515 --> 00:05:09.175
301
+ a continuación, le dice inmediatamente, tu edad es
302
+
303
+ 00:05:09.315 --> 00:05:12.515
304
+ dieciocho. Esto es porque nuestro programa ha funcionado
305
+
306
+ 00:05:12.515 --> 00:05:15.600
307
+ correctamente. Una cosa que es importante que sepas
308
+
309
+ 00:05:15.760 --> 00:05:17.760
310
+ es que la forma en la que define
311
+
312
+ 00:05:17.760 --> 00:05:19.680
313
+ cómo va a almacenar esos datos depende del
314
+
315
+ 00:05:19.680 --> 00:05:21.120
316
+ tipo de dato de la variable que hayas
317
+
318
+ 00:05:21.120 --> 00:05:24.080
319
+ creado. Si tú creaste una variable tipo entero,
320
+
321
+ 00:05:24.080 --> 00:05:25.600
322
+ va a asumir que se trata de un
323
+
324
+ 00:05:25.600 --> 00:05:28.160
325
+ número. Por lo tanto, si yo tomara esa
326
+
327
+ 00:05:28.160 --> 00:05:31.895
328
+ edad y quisiera hacer operaciones aritméticas con ella,
329
+
330
+ 00:05:31.895 --> 00:05:34.615
331
+ podría hacerlo. Si, en todo caso, yo la
332
+
333
+ 00:05:34.615 --> 00:05:37.415
334
+ declarara como otro tipo, como un carácter, entonces,
335
+
336
+ 00:05:37.415 --> 00:05:39.815
337
+ yo no podría realizar las operaciones que le
338
+
339
+ 00:05:39.815 --> 00:05:42.215
340
+ corresponden solo a los números. Esto es importante
341
+
342
+ 00:05:42.215 --> 00:05:43.575
343
+ porque es la forma en la que C
344
+
345
+ 00:05:43.575 --> 00:05:46.370
346
+ más más va a saber cómo manejar esos
347
+
348
+ 00:05:46.370 --> 00:05:48.130
349
+ valores que introduce el usuario a través de
350
+
351
+ 00:05:48.130 --> 00:05:52.290
352
+ Zin. Adicionalmente, y es que no te lo
353
+
354
+ 00:05:52.290 --> 00:05:54.850
355
+ había comentado en los episodios anteriores, en los
356
+
357
+ 00:05:54.850 --> 00:05:58.210
358
+ capítulos anteriores, es cómo realizar comentarios en un
359
+
360
+ 00:05:58.210 --> 00:06:00.375
361
+ código en C más más. Y existen dos
362
+
363
+ 00:06:00.375 --> 00:06:02.630
364
+ formas súper básicas que si tú ya has
365
+
366
+ 00:06:02.630 --> 00:06:05.014
367
+ programado en otros lenguajes hermanos o descendientes de
368
+
369
+ 00:06:05.014 --> 00:06:08.555
370
+ C más más, pues, seguramente conocerás. La primera
371
+
372
+ 00:06:08.694 --> 00:06:14.700
373
+ es utilizar las doble slash. Estas doble slash
374
+
375
+ 00:06:14.700 --> 00:06:17.020
376
+ nos va a permitir comenzar a escribir aquí
377
+
378
+ 00:06:17.020 --> 00:06:20.560
379
+ cualquier comentario. Por ejemplo, esto es un comentario.
380
+
381
+ 00:06:26.485 --> 00:06:28.805
382
+ ¿Listo? Esa es la primera forma y es
383
+
384
+ 00:06:28.805 --> 00:06:30.965
385
+ una forma de escribir comentarios de una sola
386
+
387
+ 00:06:30.965 --> 00:06:33.625
388
+ línea. Y si quisiéramos escribir comentarios de múltiples
389
+
390
+ 00:06:34.005 --> 00:06:36.665
391
+ líneas, podemos utilizar esa sintaxis que es slash
392
+
393
+ 00:06:37.045 --> 00:06:41.700
394
+ asterisco como apertura, escribir todas las líneas de
395
+
396
+ 00:06:41.700 --> 00:06:44.100
397
+ comentario que querramos, y luego podemos cerrar con
398
+
399
+ 00:06:44.100 --> 00:06:49.140
400
+ asterisco slash. Y esto es un comentario de
401
+
402
+ 00:06:49.140 --> 00:07:02.685
403
+ múltiples líneas. Listo. Ahora que conoces cuáles son
404
+
405
+ 00:07:02.685 --> 00:07:05.060
406
+ las dos formas básicas de realizar comentarios y
407
+
408
+ 00:07:05.060 --> 00:07:07.620
409
+ cómo utilizar los operadores de entrada y salida
410
+
411
+ 00:07:07.620 --> 00:07:10.820
412
+ de datos con iOStream, podemos pasar a nuestra
413
+
414
+ 00:07:10.820 --> 00:07:13.700
415
+ siguiente a nuestra siguiente clase donde hablaremos sobre
416
+
417
+ 00:07:13.700 --> 00:07:14.200
418
+ condicionales.
subir/Curso de C Básico/03-Conceptos básicos/06-entrada-salida-datos.zip ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f079333690b197cda1b1f7d577cc5a765c965f9f7de333d2e225a6361d65bb36
3
+ size 5449
subir/Curso de C Básico/presentation.mhtml ADDED
The diff for this file is too large to render. See raw diff
 
subir/Curso de Funciones en C/03-Bibliotecas estándar de funciones/04-Lecturas recomendadas.txt ADDED
@@ -0,0 +1,2 @@
 
 
 
1
+ https://www.tutorialspoint.com/c_standard_library/time_h.htm
2
+ https://www.timeanddate.com/
subir/Curso de Funciones en C/03-Bibliotecas estándar de funciones/04-Resumen.html ADDED
The diff for this file is too large to render. See raw diff
 
subir/Curso de Funciones en C/03-Bibliotecas estándar de funciones/05-Conversión de Decimal a Binario en C usando Ciclo For y Arrays.mp4 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b80c845d4d72fad964f2a84a25bbe36a1e7370ca699e30445efd6f4e7fb5ce89
3
+ size 147091692
subir/Curso de Funciones en C/03-Bibliotecas estándar de funciones/05-Conversión de Decimal a Binario en C usando Ciclo For y Arrays.vtt ADDED
@@ -0,0 +1,989 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ WEBVTT
2
+
3
+ 00:03.423 --> 00:05.500
4
+ Bien, llegó el momento
5
+ de ver otro ejemplo.
6
+
7
+ 00:05.500 --> 00:08.000
8
+ Aquí te voy a enseñar
9
+ cómo podemos utilizar
10
+
11
+ 00:08.000 --> 00:11.000
12
+ unas librerías o bibliotecas nuevas,
13
+
14
+ 00:11.000 --> 00:15.000
15
+ que es la biblioteca stdlib,
16
+ la biblioteca estándar.
17
+
18
+ 00:15.000 --> 00:17.300
19
+ Quiero simplemente mostrarte
20
+ un comando system,
21
+
22
+ 00:17.300 --> 00:19.800
23
+ pero también quiero que veas
24
+ un código de ejemplo
25
+
26
+ 00:19.800 --> 00:22.900
27
+ de cómo podemos agarrar
28
+ un número en decimal
29
+
30
+ 00:22.900 --> 00:25.300
31
+ y convertirlo a un número en binario.
32
+
33
+ 00:25.576 --> 00:27.300
34
+ Vamos a Visual Studio Code.
35
+
36
+ 00:29.563 --> 00:31.718
37
+ Como siempre
38
+ abrimos nuestra nueva pestaña,
39
+
40
+ 00:32.212 --> 00:35.166
41
+ guardamos, le vamos a poner
42
+ a nuestro programa
43
+
44
+ 00:35.292 --> 00:41.031
45
+ decimal to binary.c
46
+
47
+ 00:43.292 --> 00:45.292
48
+ Muy bien,
49
+ este es un programa bien clásico
50
+
51
+ 00:45.418 --> 00:48.319
52
+ en donde vamos a aprender a
53
+ utilizar principalmente el ciclo for.
54
+
55
+ 00:48.565 --> 00:50.908
56
+ Lo primero que te quiero mostrar
57
+ es el algoritmo
58
+
59
+ 00:51.034 --> 00:52.196
60
+ que vamos a estar siguiendo.
61
+
62
+ 00:52.322 --> 00:54.936
63
+ Si nunca has trabajado con divisiones
64
+
65
+ 00:55.062 --> 00:56.907
66
+ de un valor decimal a binario,
67
+
68
+ 00:57.033 --> 00:58.578
69
+ te explico brevemente el algoritmo.
70
+
71
+ 00:58.838 --> 01:01.418
72
+ El primer paso de nuestro algoritmo
73
+
74
+ 01:01.544 --> 01:08.384
75
+ va a ser dividir el valor entre dos.
76
+
77
+ 01:10.039 --> 01:12.652
78
+ Y almacenar
79
+
80
+ 01:15.831 --> 01:18.428
81
+ el remainder, el restante,
82
+
83
+ 01:18.554 --> 01:21.834
84
+ el resto o el mod o como le llames tú,
85
+
86
+ 01:22.320 --> 01:24.315
87
+ a en un array.
88
+
89
+ 01:26.599 --> 01:27.599
90
+ Muy bien.
91
+
92
+ 01:27.725 --> 01:29.140
93
+ El segundo paso
94
+
95
+ 01:32.222 --> 01:34.572
96
+ va a ser dividir
97
+
98
+ 01:37.136 --> 01:38.249
99
+ otra vez
100
+
101
+ 01:39.327 --> 01:41.150
102
+ entre dos
103
+
104
+ 01:42.005 --> 01:47.300
105
+ y almacenar el restante.
106
+
107
+ 01:48.627 --> 01:50.174
108
+ Si es cero o si es uno,
109
+
110
+ 01:51.332 --> 01:53.551
111
+ lo que conocemos
112
+ como el módulo de la operación.
113
+
114
+ 01:54.691 --> 01:59.875
115
+ Y por último, repetirlo hasta que
116
+
117
+ 02:03.403 --> 02:08.376
118
+ nuestro número
119
+
120
+ 02:10.103 --> 02:13.267
121
+ ya no se pueda dividir.
122
+
123
+ 02:13.393 --> 02:15.485
124
+ Ahora sí, comencemos con nuestro código.
125
+
126
+ 02:16.445 --> 02:18.300
127
+ Lo primero es utilizar include
128
+
129
+ 02:18.300 --> 02:20.604
130
+ para llamar nuestras bibliotecas.
131
+
132
+ 02:20.730 --> 02:23.676
133
+ La primera que voy a utilizar es stdio.h.
134
+
135
+ 02:24.283 --> 02:25.667
136
+ La segunda que voy a utilizar,
137
+
138
+ 02:25.793 --> 02:28.593
139
+ como ya te lo había spoileado al principio,
140
+
141
+ 02:28.719 --> 02:31.300
142
+ va a ser stdlib.h.
143
+
144
+ 02:31.300 --> 02:32.300
145
+ Excelente.
146
+
147
+ 02:32.300 --> 02:35.807
148
+ Ya con esto vamos a proceder a declarar
149
+
150
+ 02:35.933 --> 02:37.300
151
+ nuestro código main.
152
+
153
+ 02:37.788 --> 02:41.948
154
+ Antes voy a declarar una serie de variables
155
+ de tipo entero que voy a estar utilizando.
156
+
157
+ 02:42.402 --> 02:46.300
158
+ Voy a tener un array en donde
159
+ voy a guardar mis resultados.
160
+
161
+ 02:47.200 --> 02:49.679
162
+ No vamos a hacer conversiones de números
163
+ muy grandes,
164
+
165
+ 02:49.946 --> 02:54.300
166
+ así que voy a decirle
167
+ que sea de 12 posiciones
168
+
169
+ 02:54.300 --> 02:57.300
170
+ para poder crear un número binario
171
+ de hasta 12 dígitos.
172
+
173
+ 02:58.261 --> 03:00.300
174
+ Asimismo vamos a tener dos auxiliares,
175
+
176
+ 03:00.300 --> 03:03.833
177
+ el auxiliar n para nuestro número
178
+ que vamos a recibir
179
+
180
+ 03:04.033 --> 03:07.300
181
+ y el auxiliar i para nuestros arrays
182
+
183
+ 03:07.300 --> 03:09.300
184
+ que vamos a estar trabajando.
185
+
186
+ 03:09.300 --> 03:11.300
187
+ Para nuestros ciclos también.
188
+
189
+ 03:11.653 --> 03:14.300
190
+ Punto y coma,
191
+ ya declaramos todas nuestras variables.
192
+
193
+ 03:14.300 --> 03:15.300
194
+ Está excelente.
195
+
196
+ 03:15.943 --> 03:18.300
197
+ Ahora sí vamos a proceder
198
+ a escribir nuestro main.
199
+
200
+ 03:20.300 --> 03:22.300
201
+ Ya sabes, abrimos todo,
202
+
203
+ 03:23.134 --> 03:27.300
204
+ nuestras llaves y colocamos return 0.
205
+
206
+ 03:28.517 --> 03:29.533
207
+ Perfecto.
208
+
209
+ 03:30.054 --> 03:31.300
210
+ Ya que tenemos nuestro main,
211
+
212
+ 03:31.300 --> 03:33.545
213
+ pues podemos comenzar con nuestro código.
214
+
215
+ 03:33.671 --> 03:36.300
216
+ Lo primero que vamos a hacer
217
+ es pedirle al usuario
218
+
219
+ 03:36.300 --> 03:38.300
220
+ que nos diga cuál es el número
221
+ que quiere convertir.
222
+
223
+ 03:38.533 --> 03:39.638
224
+ Es lo lógico.
225
+
226
+ 03:40.131 --> 03:44.300
227
+ Entonces ingrese un valor decimal.
228
+
229
+ 03:46.733 --> 03:47.733
230
+ Perfecto.
231
+
232
+ 03:48.169 --> 03:50.935
233
+ Y vamos a poner nuestro salto de línea,
234
+
235
+ 03:51.061 --> 03:52.300
236
+ punto y coma.
237
+
238
+ 03:52.843 --> 03:55.485
239
+ Vamos a necesitar crear un ciclo for
240
+
241
+ 03:55.611 --> 03:58.300
242
+ en el cual vamos a estar
243
+ constantemente iterando
244
+
245
+ 03:58.300 --> 04:02.300
246
+ para que se vaya resolviendo
247
+ nuestro problema que tenemos acá.
248
+
249
+ 04:02.905 --> 04:05.978
250
+ Este ciclo for como siempre va a comenzar
251
+ en i igual a 0,
252
+
253
+ 04:06.104 --> 04:08.715
254
+ pero la condición si va
255
+ a tener un pequeño cambio
256
+
257
+ 04:08.841 --> 04:11.300
258
+ y no vamos a utilizar i,
259
+
260
+ 04:11.300 --> 04:13.771
261
+ vamos a utilizar n, que es el número,
262
+
263
+ 04:13.897 --> 04:15.704
264
+ siempre que el número sea mayor a 0.
265
+
266
+ 04:15.830 --> 04:18.934
267
+ Pero aquí te deberías estar preguntando
268
+ ¿por qué n?
269
+
270
+ 04:19.060 --> 04:20.702
271
+ Bueno, te explico fácilmente.
272
+
273
+ 04:20.828 --> 04:23.072
274
+ Porque n es el número
275
+ que estamos metiendo,
276
+
277
+ 04:23.198 --> 04:26.118
278
+ es la variable en donde ingresamos
279
+ el valor que vamos a convertir.
280
+
281
+ 04:26.244 --> 04:29.300
282
+ Y mientras este valor no haya llegado a 0
283
+
284
+ 04:29.300 --> 04:31.634
285
+ en nuestro proceso
286
+ de divisiones entre 2,
287
+
288
+ 04:31.861 --> 04:33.983
289
+ pues nosotros tenemos
290
+ que seguirlo dividiendo.
291
+
292
+ 04:34.109 --> 04:36.711
293
+ Es decir, si n es mayor a 0,
294
+
295
+ 04:36.837 --> 04:39.379
296
+ entonces seguimos repitiendo el ciclo for,
297
+
298
+ 04:39.505 --> 04:41.300
299
+ porque lo vamos a seguir
300
+ dividiendo entre 2,
301
+
302
+ 04:41.300 --> 04:43.495
303
+ hasta que como te lo expliqué
304
+ en el algoritmo,
305
+
306
+ 04:43.621 --> 04:46.300
307
+ hasta que nuestro número
308
+ ya no se pueda dividir.
309
+
310
+ 04:46.300 --> 04:48.800
311
+ ¿Por qué?
312
+ Porque ya lo dividimos al máximo,
313
+
314
+ 04:48.926 --> 04:50.300
315
+ es decir, porque ya es 0.
316
+
317
+ 04:50.300 --> 04:51.300
318
+ Perfecto.
319
+
320
+ 04:51.970 --> 04:54.300
321
+ Muy bien,
322
+ vamos a poner nuestro iterador
323
+
324
+ 04:54.300 --> 04:55.300
325
+ que va a ser i más más,
326
+
327
+ 04:55.576 --> 04:57.727
328
+ porque este i más más justamente,
329
+
330
+ 04:57.853 --> 05:01.300
331
+ nos va a estar sirviendo
332
+ para recorrer una posición en el array
333
+
334
+ 05:01.554 --> 05:03.610
335
+ y así cada resultado de la división,
336
+
337
+ 05:03.736 --> 05:06.511
338
+ automáticamente lo vamos
339
+ a estar guardando
340
+
341
+ 05:06.637 --> 05:08.335
342
+ en una posición nueva de nuestro array.
343
+
344
+ 05:08.461 --> 05:10.585
345
+ Esto es maravilloso, es muy útil
346
+
347
+ 05:10.711 --> 05:14.300
348
+ y es una forma bastante importante
349
+ que quiero que te quedes,
350
+
351
+ 05:14.300 --> 05:16.300
352
+ de cómo puedes utilizar un ciclo for.
353
+
354
+ 05:16.867 --> 05:19.300
355
+ Muy bien, ahora sí procedamos
356
+ a escribir el código.
357
+
358
+ 05:19.928 --> 05:22.800
359
+ Lo primero es que aquí
360
+ vamos a utilizar nuestro array,
361
+
362
+ 05:23.143 --> 05:24.300
363
+ que le puse a the array.
364
+
365
+ 05:26.891 --> 05:29.300
366
+ Este array, de hecho le voy
367
+ a cambiar el nombre a la variable,
368
+
369
+ 05:29.300 --> 05:34.722
370
+ para que sea un nombre mucho más fácil
371
+ para ti de recordar.
372
+
373
+ 05:34.942 --> 05:37.300
374
+ Binary number.
375
+
376
+ 05:37.812 --> 05:38.831
377
+ Perfecto.
378
+
379
+ 05:38.957 --> 05:41.300
380
+ Ahora nuestro array
381
+ se llama binary number
382
+
383
+ 05:41.300 --> 05:44.174
384
+ y aquí es donde vamos a almacenar,
385
+ como su nombre lo indica,
386
+
387
+ 05:44.543 --> 05:46.300
388
+ nuestro número binario.
389
+
390
+ 05:46.654 --> 05:47.654
391
+ Perfecto.
392
+
393
+ 05:47.780 --> 05:52.300
394
+ Con esto dicho, vamos a hacer
395
+ a binary number en la posición i.
396
+
397
+ 05:52.300 --> 05:55.562
398
+ Como sabes, la posición i
399
+ va a comenzar en 0.
400
+
401
+ 05:56.688 --> 05:58.300
402
+ Entonces eso está muy bien.
403
+
404
+ 05:58.623 --> 06:01.300
405
+ Vamos a tener la primera iteración, etc.
406
+
407
+ 06:01.523 --> 06:04.300
408
+ y aquí vamos a ir guardando
409
+ todos nuestros residuos.
410
+
411
+ 06:04.491 --> 06:08.300
412
+ Para poder guardar nuestros residuos,
413
+ simple y sencillamente,
414
+
415
+ 06:08.532 --> 06:11.800
416
+ tenemos que usar n igual a n,
417
+
418
+ 06:13.300 --> 06:15.800
419
+ con el módulo de la división entre 2.
420
+
421
+ 06:16.043 --> 06:18.800
422
+ Eso es lo que significa esta operación
423
+ que acabo de hacer aquí.
424
+
425
+ 06:18.800 --> 06:20.300
426
+ Y por último,
427
+
428
+ 06:21.523 --> 06:25.300
429
+ n va a ser igual a n...
430
+
431
+ 06:26.591 --> 06:29.300
432
+ va a ser igual a n sobre 2.
433
+
434
+ 06:30.853 --> 06:32.153
435
+ Punto y coma.
436
+ Excelente.
437
+
438
+ 06:32.279 --> 06:35.581
439
+ Entonces, aquí vamos a tener binary number,
440
+
441
+ 06:35.866 --> 06:40.040
442
+ esto va a almacenar el módulo
443
+ de nuestra operación,
444
+
445
+ 06:40.166 --> 06:42.166
446
+ del módulo de lo que sería
447
+ la división entre 2
448
+
449
+ 06:42.693 --> 06:46.300
450
+ y luego efectivamente vamos
451
+ a proceder a hacer la división.
452
+
453
+ 06:46.300 --> 06:48.300
454
+ ¿Por qué están en dos renglones diferentes?
455
+
456
+ 06:48.300 --> 06:50.300
457
+ Porque este solo calcula el módulo
458
+
459
+ 06:50.300 --> 06:52.300
460
+ y este sí que calcula la división.
461
+
462
+ 06:52.300 --> 06:55.300
463
+ Entonces, el módulo del valor
464
+ actual lo guardamos
465
+
466
+ 06:55.640 --> 06:58.800
467
+ en nuestro array en donde va a estar
468
+ nuestro número binario
469
+
470
+ 06:58.800 --> 07:01.300
471
+ y luego procedemos
472
+ a hacer la división entre 2.
473
+
474
+ 07:01.300 --> 07:04.300
475
+ Si esta división entre 2 fue correcta,
476
+
477
+ 07:04.300 --> 07:06.800
478
+ si esta división entre 2 todavía no...
479
+
480
+ 07:06.800 --> 07:08.800
481
+ todavía nos da un resultado
482
+ que es mayor a 0,
483
+
484
+ 07:08.800 --> 07:11.800
485
+ significa que se puede
486
+ volver a dividir entre 2
487
+
488
+ 07:11.800 --> 07:13.800
489
+ y entonces le vamos
490
+ a volver a sacar el módulo
491
+
492
+ 07:13.800 --> 07:15.300
493
+ y volver a dividir entre 2
494
+
495
+ 07:15.300 --> 07:18.300
496
+ y esto así sucesivamente hasta el final.
497
+
498
+ 07:18.860 --> 07:22.800
499
+ Bueno, eso sería el for
500
+ que se va a encargar de nuestro...
501
+
502
+ 07:23.208 --> 07:26.800
503
+ de nuestro cálculo de binario...
504
+ de decimal a binario, ¿no?
505
+
506
+ 07:26.800 --> 07:29.300
507
+ Ahora hay que hacer un for para imprimir
508
+ nuestro array,
509
+
510
+ 07:29.300 --> 07:30.800
511
+ entonces vamos a hacer un print,
512
+
513
+ 07:32.473 --> 07:34.973
514
+ vamos a ponerle el resultado,
515
+
516
+ 07:35.800 --> 07:37.800
517
+ la conversión...
518
+ mejor...
519
+
520
+ 07:39.413 --> 07:41.413
521
+ la conversión de...
522
+
523
+ 07:42.135 --> 07:45.674
524
+ y aquí vamos a pasarle primero
525
+ el número original
526
+
527
+ 07:47.076 --> 07:48.800
528
+ para que lo imprima,
529
+
530
+ 07:49.364 --> 07:51.300
531
+ ingrese un valor en decimal, muy bien,
532
+
533
+ 07:51.300 --> 07:53.300
534
+ como aquí vamos a estar modificando n
535
+
536
+ 07:53.300 --> 07:54.800
537
+ porque no se lo estamos...
538
+
539
+ 07:54.800 --> 07:58.800
540
+ entonces si tenemos que imprimir n antes,
541
+
542
+ 07:58.800 --> 08:00.800
543
+ ingrese el valor de un decimal, perfecto,
544
+
545
+ 08:01.541 --> 08:02.908
546
+ vamos a poner aquí otro print,
547
+
548
+ 08:04.800 --> 08:08.366
549
+ usted, porque siempre
550
+ hay que ser respetuosos,
551
+
552
+ 08:08.492 --> 08:12.093
553
+ va a convertir el número
554
+
555
+ 08:13.680 --> 08:16.800
556
+ %d a binario
557
+
558
+ 08:18.131 --> 08:21.800
559
+ y aquí le pasamos nuestra variable n,
560
+ punto y coma.
561
+
562
+ 08:22.634 --> 08:24.800
563
+ La conversión de la...
564
+
565
+ 08:26.418 --> 08:28.573
566
+ ok, el resultado es...
567
+
568
+ 08:31.543 --> 08:33.800
569
+ el resultado es...
570
+
571
+ 08:34.800 --> 08:37.040
572
+ y si han estado poniendo
573
+ mucho cuidado en los cursos,
574
+
575
+ 08:37.166 --> 08:39.290
576
+ se debieron de haber dado cuenta
577
+ que a mí me faltó acá
578
+
579
+ 08:39.416 --> 08:42.300
580
+ un %n,
581
+ un diagonal invertida n,
582
+
583
+ 08:42.426 --> 08:44.300
584
+ ya se lo puse, entonces todo bien.
585
+
586
+ 08:44.577 --> 08:46.800
587
+ El resultado de la conversión
588
+
589
+ 08:48.729 --> 08:50.800
590
+ es 2 puntos
591
+
592
+ 08:50.800 --> 08:54.475
593
+ y aquí le vamos a pasar nuestro número
594
+ en binario,
595
+
596
+ 08:54.601 --> 08:55.800
597
+ así que bueno,
598
+
599
+ 08:55.800 --> 08:58.800
600
+ de momento no lo voy
601
+ a hacer en este print,
602
+
603
+ 08:58.800 --> 09:00.300
604
+ así que no voy a dejar un %n,
605
+
606
+ 09:00.300 --> 09:05.300
607
+ quiero que lo que voy a imprimir
608
+ abajo se haga continuo,
609
+
610
+ 09:05.842 --> 09:08.800
611
+ simplemente voy a dejar el
612
+ espacio en blanco acá, perfecto,
613
+
614
+ 09:09.047 --> 09:11.034
615
+ y voy a escribir un ciclo for,
616
+
617
+ 09:11.160 --> 09:13.111
618
+ ¿por qué vamos a utilizar otro ciclo for?
619
+
620
+ 09:13.237 --> 09:14.800
621
+ porque tenemos un array
622
+
623
+ 09:14.800 --> 09:17.800
624
+ y este array, simple y sencillamente,
625
+
626
+ 09:17.800 --> 09:20.800
627
+ lo vamos a utilizar para
628
+ ir imprimiendo este vector,
629
+
630
+ 09:21.122 --> 09:25.300
631
+ pues como ya te dije,
632
+ es una serie de valores
633
+
634
+ 09:25.300 --> 09:28.105
635
+ que se almacenan en línea recta,
636
+ por decirlo así,
637
+
638
+ 09:28.231 --> 09:29.800
639
+ y cada uno toma una posición
640
+
641
+ 09:29.800 --> 09:32.300
642
+ y podemos tener hasta 12 posiciones
643
+ de memoria,
644
+
645
+ 09:32.558 --> 09:33.800
646
+ es decir, vamos a tener...
647
+
648
+ 09:33.800 --> 09:36.564
649
+ en la primera iteración vamos
650
+ a tener un número
651
+
652
+ 09:36.690 --> 09:37.800
653
+ que puede ser 0 1,
654
+
655
+ 09:37.800 --> 09:40.800
656
+ en la segunda vamos a tener otro número
657
+ que puede ser 0 1,
658
+
659
+ 09:40.800 --> 09:42.800
660
+ en la tercera vamos a tener otro número
661
+
662
+ 09:42.800 --> 09:44.800
663
+ y así se van a guardar sucesivamente
664
+
665
+ 09:44.800 --> 09:46.800
666
+ en las 12 posiciones de nuestro array,
667
+
668
+ 09:47.143 --> 09:50.300
669
+ entonces, ahora hay que sacarle
670
+ esas posiciones de nuestro array,
671
+
672
+ 09:50.300 --> 09:53.008
673
+ para esto vamos a recorrer nuestro vector.
674
+
675
+ 09:53.134 --> 09:54.300
676
+ Ahora que ya sabes de qué...
677
+
678
+ 09:54.300 --> 09:55.800
679
+ por qué necesitaremos otro for,
680
+
681
+ 09:55.800 --> 09:57.300
682
+ te explico qué va a ir adentro.
683
+
684
+ 09:57.687 --> 09:59.582
685
+ Recuerda que nuestro auxiliar i,
686
+
687
+ 09:59.708 --> 10:03.300
688
+ nos llegaba hasta la parte final
689
+ de nuestro array,
690
+
691
+ 10:03.300 --> 10:05.300
692
+ en donde había guardado el último dígito,
693
+
694
+ 10:05.575 --> 10:07.300
695
+ simple y sencillamente
696
+ este incrementador
697
+
698
+ 10:07.300 --> 10:09.648
699
+ nos dejaba ahí, si guardamos 5 dígitos,
700
+
701
+ 10:09.774 --> 10:11.898
702
+ nos lo dejaba en el valor 5
703
+
704
+ 10:12.024 --> 10:15.300
705
+ y así sucesivamente,
706
+ nos lo dejaba en el último valor
707
+
708
+ 10:15.300 --> 10:17.300
709
+ que habíamos grabado, eso es genial,
710
+
711
+ 10:17.300 --> 10:19.300
712
+ pero aquí abajo, entonces,
713
+
714
+ 10:19.300 --> 10:20.800
715
+ tenemos que empezar a imprimir
716
+
717
+ 10:20.800 --> 10:22.300
718
+ y vamos a comenzar a imprimir
719
+
720
+ 10:22.300 --> 10:24.300
721
+ desde el último valor de nuestro array,
722
+
723
+ 10:24.300 --> 10:26.800
724
+ porque es el último dato que se generó,
725
+
726
+ 10:26.800 --> 10:29.300
727
+ hasta el primero, vamos a ver
728
+ cómo funciona esto.
729
+
730
+ 10:31.066 --> 10:33.300
731
+ La condición acá es interesante,
732
+
733
+ 10:33.300 --> 10:38.532
734
+ porque vamos a ir decrementando
735
+ nuestro auxiliar en 1 de entrada,
736
+
737
+ 10:38.600 --> 10:39.673
738
+ ¿por qué?
739
+
740
+ 10:39.699 --> 10:42.800
741
+ Porque recuerda que los arrays
742
+ empiezan a contar del 0,
743
+
744
+ 10:42.800 --> 10:45.800
745
+ si entonces estábamos
746
+ en el número 5 que se guardó,
747
+
748
+ 10:46.099 --> 10:49.800
749
+ la posición real del array,
750
+ del quinto valor, es el 4,
751
+
752
+ 10:49.800 --> 10:50.800
753
+ entonces te explico,
754
+
755
+ 10:51.051 --> 10:53.800
756
+ un array siempre comienza en 0,
757
+ en la posición 0,
758
+
759
+ 10:54.239 --> 10:57.300
760
+ 0, 1, 2, 3, 4,
761
+
762
+ 10:57.300 --> 10:59.800
763
+ en el número...
764
+ en la posición 4 de nuestro array,
765
+
766
+ 11:00.124 --> 11:02.300
767
+ tenemos el quinto valor, ¿ok?
768
+
769
+ 11:02.583 --> 11:04.300
770
+ Con esto dicho, seguimos.
771
+
772
+ 11:04.676 --> 11:08.300
773
+ Vamos aquí a nuestro auxiliar,
774
+ a la parte de la condición,
775
+
776
+ 11:08.300 --> 11:13.300
777
+ entonces, si es mayor que o igual,
778
+
779
+ 11:13.624 --> 11:16.800
780
+ si es mayor o igual a 0, es decir
781
+ que no hemos terminado
782
+
783
+ 11:17.003 --> 11:20.800
784
+ nuestro array o que estamos por terminarlo,
785
+
786
+ 11:21.002 --> 11:23.800
787
+ y i menos menos,
788
+ vamos a ir decremental,
789
+
790
+ 11:23.800 --> 11:25.800
791
+ estamos recorriéndolo
792
+ del final de nuestro array,
793
+
794
+ 11:26.005 --> 11:27.800
795
+ al principio de nuestro array.
796
+
797
+ 11:28.133 --> 11:30.300
798
+ Ahora, el código que vamos a poner aquí,
799
+
800
+ 11:30.439 --> 11:31.800
801
+ va a ser súper simple,
802
+
803
+ 11:32.161 --> 11:33.800
804
+ vamos a poner un print,
805
+
806
+ 11:33.800 --> 11:35.800
807
+ vamos a poner paréntesis,
808
+
809
+ 11:36.229 --> 11:37.800
810
+ %d,
811
+
812
+ 11:38.800 --> 11:39.800
813
+ coma,
814
+
815
+ 11:40.541 --> 11:43.993
816
+ y le vamos a pasar el valor
817
+ que tengamos almacenado
818
+
819
+ 11:44.119 --> 11:46.800
820
+ en nuestro binary number,
821
+
822
+ 11:46.800 --> 11:48.800
823
+ que es nuestro array del resultado,
824
+
825
+ 11:48.800 --> 11:51.397
826
+ es decir, i, punto y coma.
827
+
828
+ 11:51.631 --> 11:54.800
829
+ ¿Te acuerdas que utilizamos
830
+ la biblioteca STDELIV?
831
+
832
+ 11:54.800 --> 11:56.800
833
+ Esto nos da una función súper chévere,
834
+
835
+ 11:56.800 --> 11:57.800
836
+ que es system,
837
+
838
+ 11:58.095 --> 12:00.800
839
+ en system nosotros
840
+ le vamos a pasar argumentos
841
+
842
+ 12:00.800 --> 12:02.300
843
+ que van directo al sistema,
844
+
845
+ 12:02.300 --> 12:05.300
846
+ al sistema en el que estamos trabajando,
847
+
848
+ 12:05.300 --> 12:07.300
849
+ entonces, yo le voy a pasar CLS,
850
+
851
+ 12:07.300 --> 12:09.300
852
+ que nos va a servir
853
+ para limpiar la terminal,
854
+
855
+ 12:09.300 --> 12:12.300
856
+ y también le voy a pasar system color,
857
+
858
+ 12:12.300 --> 12:15.555
859
+ que nos va a servir para cambiar
860
+ el color de las letras
861
+
862
+ 12:15.681 --> 12:18.030
863
+ que estamos trabajando
864
+ en nuestra terminal,
865
+
866
+ 12:18.156 --> 12:21.476
867
+ 0 es negro y 9 llega a light blue,
868
+
869
+ 12:21.602 --> 12:24.800
870
+ también tenemos los códigos de letras,
871
+
872
+ 12:24.800 --> 12:26.800
873
+ porque estamos hablando
874
+ de valores hexadecimales,
875
+
876
+ 12:26.800 --> 12:28.800
877
+ que van desde blanco brilloso,
878
+
879
+ 12:28.800 --> 12:30.800
880
+ hasta amarillo, aqua,
881
+
882
+ 12:30.800 --> 12:32.800
883
+ te voy a dejar un link
884
+ para que los consultes
885
+
886
+ 12:32.800 --> 12:34.800
887
+ en la sección de enlaces, los colores,
888
+
889
+ 12:34.800 --> 12:37.229
890
+ en esto, para esta función.
891
+
892
+ 12:37.355 --> 12:39.800
893
+ Entonces, tengo un typo acá,
894
+
895
+ 12:39.800 --> 12:41.800
896
+ tengo que poner color, no colar,
897
+
898
+ 12:41.800 --> 12:45.800
899
+ y le voy a poner 9f,
900
+
901
+ 12:45.800 --> 12:46.800
902
+ a ver qué pasa,
903
+
904
+ 12:46.800 --> 12:50.800
905
+ que es 9 del azul ligero
906
+ y f de blanco brilloso.
907
+
908
+ 12:50.800 --> 12:53.300
909
+ Vamos a ejecutar esto
910
+ para ver cómo funciona,
911
+
912
+ 12:53.559 --> 12:56.800
913
+ vamos a darle, ya sabes, f6 o fnf6,
914
+
915
+ 12:57.060 --> 12:58.800
916
+ compila de manera exitosa,
917
+
918
+ 12:58.800 --> 13:00.800
919
+ y tenemos nuestras letras blancas
920
+
921
+ 13:00.800 --> 13:02.800
922
+ con un fondo azul,
923
+
924
+ 13:02.800 --> 13:04.800
925
+ esto está muy, muy chévere.
926
+
927
+ 13:04.800 --> 13:06.800
928
+ Muy bien, ahora dice,
929
+ ingrese un valor decimal,
930
+
931
+ 13:06.800 --> 13:09.135
932
+ vamos a pasarle el valor 30,
933
+
934
+ 13:09.261 --> 13:11.800
935
+ dice, usted va a convertir
936
+ el número 30 a binario,
937
+
938
+ 13:11.800 --> 13:14.800
939
+ el resultado de la conversión es 11110.
940
+
941
+ 13:15.114 --> 13:16.800
942
+ Ahora, vamos a Google Chrome,
943
+
944
+ 13:16.800 --> 13:18.674
945
+ porque quiero validar esto,
946
+ por supuesto,
947
+
948
+ 13:19.349 --> 13:21.800
949
+ y en Google Chrome vamos a decirle,
950
+
951
+ 13:22.631 --> 13:27.800
952
+ 11110 binary to decimal.
953
+
954
+ 13:29.138 --> 13:31.019
955
+ Y Google Chrome, que nos entiende bien,
956
+
957
+ 13:31.145 --> 13:33.800
958
+ nos pasa esta tabla, genial, maravilloso,
959
+
960
+ 13:33.931 --> 13:37.800
961
+ y 11110 efectivamente es 30.
962
+
963
+ 13:37.800 --> 13:38.926
964
+ Y lo tenemos,
965
+
966
+ 13:39.052 --> 13:41.501
967
+ logramos hacer un programa
968
+ que es un poco más avanzado
969
+
970
+ 13:41.627 --> 13:43.131
971
+ de los que hemos ido haciendo en el curso,
972
+
973
+ 13:43.257 --> 13:47.223
974
+ en donde implementamos
975
+ una conversión de binario a decimal.
976
+
977
+ 13:47.469 --> 13:50.105
978
+ También fue tu primera introducción
979
+ a los arrays,
980
+
981
+ 13:50.231 --> 13:54.227
982
+ y eso es un tema que vemos mucho
983
+ más a profundidad en el próximo curso,
984
+
985
+ 13:54.353 --> 13:56.234
986
+ en donde sin duda espero poder verte.
987
+
988
+ 13:56.360 --> 14:00.900
989
+ Nos vemos en la próxima clase.
subir/Curso de Funciones en C/03-Bibliotecas estándar de funciones/05-Lecturas recomendadas.txt ADDED
@@ -0,0 +1,2 @@
 
 
 
1
+ https://www.tutorialspoint.com/c_standard_library/stdlib_h.htm
2
+ https://www.w3schools.com/colors/colors_picker.asp
subir/Curso de Funciones en C/03-Bibliotecas estándar de funciones/05-Resumen.html ADDED
The diff for this file is too large to render. See raw diff
 
subir/Curso de Funciones en C/03-Bibliotecas estándar de funciones/05-decimaltobinary_fe30b38b-6b12-47d7-913b-ea0e08976f1a.c ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ // 1er paso Dividir el valor entre 2 yalmacenar el resto, mod, en un array
2
+ // 2do paso dividir otra vez entre 2 y almacenar el restante
3
+ // repetir hasta que nuestro número ya no se pueda dividir
4
+
5
+ #include <stdio.h>
6
+ #include <stdlib.h>
7
+
8
+ int binaryNumber[12],n,i;
9
+
10
+ main()
11
+ {
12
+ system("cls");
13
+ system("color 9F");
14
+ printf("Ingrese un valor decimal\n");
15
+ scanf("%d", &n);
16
+ printf("Usted va a convetir el numero %d a binario\n",n);
17
+
18
+ for ( i = 0; n > 0; i++)
19
+ {
20
+ binaryNumber[i]= n%2;
21
+ n = n/2;
22
+ }
23
+
24
+ printf("El resultado de la conversion es: ");
25
+ for ( i= i-1 ; i >= 0; i--)
26
+ {
27
+ printf("%d",binaryNumber[i]);
28
+ }
29
+
30
+
31
+
32
+ return 0;
33
+ }
subir/Curso de Funciones en C/04-Cierre/01-Funciones Avanzadas en C Creación y Uso Práctico.mp4 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:7c934c3675af9bdd2223932d69278b262fd96a04e645fcd5e5322814020168fe
3
+ size 17759822
subir/Curso de Funciones en C/04-Cierre/01-Funciones Avanzadas en C Creación y Uso Práctico.vtt ADDED
@@ -0,0 +1,108 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ WEBVTT
2
+
3
+ 00:03.206 --> 00:08.000
4
+ ¡Ey! Muchas felicidades, llegaste al final
5
+ de este curso de funciones en C.
6
+
7
+ 00:08.000 --> 00:12.000
8
+ De verdad, espero que hayas puesto mucho
9
+ en práctica todo lo que aprendiste,
10
+
11
+ 00:12.000 --> 00:15.500
12
+ que te haya gustado este curso,
13
+ que me dejes tu review de 5 estrellas,
14
+
15
+ 00:15.500 --> 00:19.500
16
+ eso me ayuda muchísimo y que continues
17
+ con esta ruta de cursos de C.
18
+
19
+ 00:19.500 --> 00:22.500
20
+ Si de verdad te interesan,
21
+ compárteme tu diploma en Twitter,
22
+
23
+ 00:22.500 --> 00:26.500
24
+ en la red social que quieras, Twitter,
25
+ LinkedIn, en Twitter soy CelisMx,
26
+
27
+ 00:26.500 --> 00:30.500
28
+ ahí me puedes seguir para cualquier duda,
29
+ también te reto obviamente
30
+
31
+ 00:30.500 --> 00:33.500
32
+ a que termines el examen para que puedas
33
+ obtener ese diploma
34
+
35
+ 00:33.500 --> 00:37.500
36
+ y no te olvides de practicar muchísimo
37
+ todo lo que aprendimos.
38
+
39
+ 00:37.500 --> 00:42.500
40
+ Solo por último, para cerrar, recuerda
41
+ que hay muchísimas bibliotecas en C
42
+
43
+ 00:42.500 --> 00:44.699
44
+ y cada una tiene
45
+ una gran cantidad de funciones,
46
+
47
+ 00:44.825 --> 00:46.500
48
+ así que es imposible cubrirlas todas,
49
+
50
+ 00:46.500 --> 00:50.500
51
+ porque además, siendo honestos,
52
+ difícilmente vas a utilizar todas.
53
+
54
+ 00:50.500 --> 00:54.500
55
+ Pero sí que cubrimos las más importantes
56
+ y quiero que te quedes con eso.
57
+
58
+ 00:54.500 --> 00:57.993
59
+ Ya sabes crear tus propias funciones,
60
+ definir tus propias funciones
61
+
62
+ 00:58.119 --> 01:02.500
63
+ y también ya sabes cómo puedes tú utilizar
64
+ las funciones que vienen
65
+
66
+ 01:02.500 --> 01:05.500
67
+ en diversas bibliotecas
68
+ del programa de lenguaje C.
69
+
70
+ 01:06.023 --> 01:09.027
71
+ Con esto dicho, te reto a que explores
72
+ todas las bibliotecas,
73
+
74
+ 01:09.153 --> 01:11.500
75
+ a que pienses, ah, ok, esto me puede
76
+ servir para esto,
77
+
78
+ 01:11.500 --> 01:15.500
79
+ esto me puede servir para lo otro
80
+ y que nunca pares de aprender.
81
+
82
+ 01:15.785 --> 01:19.500
83
+ Obviamente nos vemos en el próximo curso
84
+ de este Learning Path de C,
85
+
86
+ 01:19.500 --> 01:21.500
87
+ en donde hablaremos
88
+ de estructuras de datos.
89
+
90
+ 01:21.710 --> 01:24.500
91
+ Y con esto dicho, nos vemos
92
+ en la próxima ocasión.
93
+
94
+ 01:24.824 --> 01:26.500
95
+ Gracias por haber tomado este curso,
96
+
97
+ 01:26.500 --> 01:30.500
98
+ yo soy Ricardo Celis y pues nada,
99
+ quedo súper pendiente
100
+
101
+ 01:30.500 --> 01:32.500
102
+ a cualquier duda o comentario que tengas,
103
+
104
+ 01:32.500 --> 01:34.500
105
+ me encantaría si me sigues en Twitter.
106
+
107
+ 01:34.500 --> 01:40.200
108
+ Nos vemos en la próxima.
subir/Curso de Funciones en C/04-Cierre/01-Lecturas recomendadas.txt ADDED
@@ -0,0 +1,2 @@
 
 
 
1
+ https://twitter.com/celismx
2
+ https://platzi.com/iot/