Saltar navegación

Sol Examen diciembre ejer A - Contenido educativo

Ajuste de pantalla

El ajuste de pantalla se aprecia al ver el vídeo en pantalla completa. Elige la presentación que más te guste:

Subido el 16 de diciembre de 2022 por Stefano C.

10 visualizaciones

Descargar la transcripción

Entonces, todo lo que diréis en esta grabación asume que estáis de acuerdo con ser grabados. 00:00:01
Vale, entonces, estamos corrigiendo el examen, ¿vale? 00:00:10
Entonces, vamos a ver el primer ejercicio, queremos hacer la clase atleta. 00:00:12
Vale, ok, empezamos. 00:00:16
Entonces, la clase atleta representa un atleta. 00:00:18
Esto quiere decir que la clase atleta es un molde, hemos dicho, ¿vale? 00:00:20
es una abstracción de lo que es un atleta en general, no un atleta en concreto. Luego, 00:00:24
a partir de allí, podré crear objetos atletas que serán cada objeto un atleta distinto 00:00:33
con sus propias características, ¿vale? Ahora, todos los atletas compartirán las mismas 00:00:39
características, ¿vale? Por ejemplo, todos tendrán un nombre, ¿sí? Pero cada atleta, 00:00:45
Cada objeto atleta tendrá un nombre distinto 00:00:51
Un valor de ese atributo distinto 00:00:53
¿Vale? 00:00:56
Entonces aquí a nivel de clase 00:00:57
Lo que voy a hacer es definir las características que tiene 00:00:58
La primera característica me dice 00:01:02
Nombre, el nombre del atleta 00:01:04
¿Vale? 00:01:06
Por ejemplo, ese aquí 00:01:06
Entonces le tengo que dar un nombre 00:01:08
¿Cómo lo hago? 00:01:09
Pienso en qué tipo puede tener un nombre 00:01:10
Y le doy string nombre 00:01:13
Esto es un atributo 00:01:15
Cada atleta tendrá un nombre 00:01:19
¿Cuál es su nombre? 00:01:20
No lo sé, hasta que crearé el objeto atleta y le daré un nombre concreto, pues no sé cuál es su nombre, ¿vale? 00:01:21
Luego me dice, tiene un Cia, ¿vale? Cia es un código, el código de identificación de atleta, ¿vale? 00:01:29
Se construye a partir de la categoría, la modalidad y un número, ¿vale? 00:01:34
Por ejemplo, el tercer atleta de la categoría 1, modalidad B, tendrá Cia 1B3, ¿vale? 00:01:38
Entonces, yo sé solo que tengo un string, es un string porque no es un número, no es, tiene una mezcla de carácteres, números y cosas por el estilo, por lo tanto es un string que admite cualquier cosa y lo pongo ahí. 00:01:43
Y finalmente tiene saltos, saltos me dice que es un array de puntuaciones obtenidas en sus saltos, ¿vale? Apuntaciones a los números enteros, me está diciendo que es un int, no, un array de int, ¿vale? Me lo dice, es un array de puntuaciones, las puntuaciones son enteros, es un array de enteros, ¿vale? 00:01:59
Que pongo aquí. Ahora, yo ya he hecho este molde. Un atleta, cuando yo creo un atleta, tendrá que tener esta información de aquí. Todos los atletas tendrán un nombre, todos los atletas tendrán un CIA, todos los atletas tendrán una serie de saltos, ¿vale? 00:02:28
Luego, ¿cuáles serán los valores concretos de cada uno de estos objetos? 00:02:43
Ya lo tenemos adelante cuando lo creamos, ¿vale? 00:02:47
Pero esto es lo que hay. 00:02:50
Aquí había dos opciones. 00:02:53
O me creo un constructor para crear esta información de aquí, ¿vale? 00:02:55
O si no, lo dejo sin constructor y luego después rellenaré estos valores de alguna forma, ¿vale? 00:03:02
Por ahora dejamos así, sin constructores, ¿vale? 00:03:10
Para simplificar 00:03:14
Pensamos que estamos en el examen 00:03:15
No quiero hacer, no sé qué es un constructor 00:03:17
Pues sigue adelante así, ¿vale? 00:03:20
Si luego queréis, después lo modificamos y ponemos un constructor 00:03:21
Vale, entonces esta es la primera parte 00:03:25
La parte de los atributos, lo ponía aquí, ¿vale? 00:03:27
Después vienen los métodos 00:03:30
Es decir, esto es lo que es 00:03:31
Las características, los atributos de una clase 00:03:33
De un objeto que tendrá 00:03:37
Este tipo, vale 00:03:39
Y ahora lo que tengo que hacer es 00:03:41
Implementar métodos, vale 00:03:43
Y me dice aquí que métodos hay 00:03:45
Hay el método saltos, vale 00:03:47
El método saltos dice, este método rellena 00:03:49
Todas las raíces altas con puntuaciones aleatorias 00:03:51
Para generar un número aleatorio 00:03:53
Recuerda que matrandom, vale, bla bla bla 00:03:55
La puntuación será entre 5 y 10 00:03:57
Vale, es decir 00:04:00
Que yo tendré aquí un método 00:04:01
Public 00:04:03
Void 00:04:04
saltos 00:04:06
que lo que hará es rellenar 00:04:09
esta array 00:04:15
entonces 00:04:15
¿cómo relleno 00:04:19
estos arrays? 00:04:21
¿vale? for 00:04:23
¿vale? cuando tengo un array tendré que hacer 00:04:24
un for para ir en todas las posiciones 00:04:27
del array 00:04:29
for int is igual a 0 00:04:29
y es menor de que? 00:04:32
¿ve? 00:04:34
saltos.length 00:04:38
Y más más 00:04:39
¿Vale? Cuidado 00:04:45
Y uno dice, si más altos está vacío 00:04:47
Ahora está vacío 00:04:49
¿Vale? Se supone que cuando yo llame 00:04:52
Este método de aquí 00:04:55
Ya habré creado algo aquí dentro 00:04:56
Entonces si le he creado un array 00:04:59
De tres posiciones 00:05:01
Pues entonces esto me lo hará por las tres posiciones 00:05:02
De la array, si esto será un array 00:05:05
De diez posiciones, me lo hará diez veces 00:05:06
No lo sé, ¿vale? 00:05:08
Está claro que así está mal hecho 00:05:11
Aquí a lo mejor debería preguntarme si saltos no es null 00:05:13
Eso sería un poquito más elegante 00:05:20
Me pregunto antes si es null, no hago nada 00:05:24
Porque si intento acceder a alguna posición de saltos sin que nadie me la haya creado 00:05:26
Pues explotaría 00:05:31
Entonces le meto esta cosa aquí para guardarme de, oye mira que no explota 00:05:32
¿Vale? Pero 00:05:38
Estos son cosas que tenemos que ir 00:05:39
Pensando y asimilando con el tiempo 00:05:42
Por ahora, se me ha olvidado 00:05:44
¿Vale? No lo pongo, lo hago más sencillo posible 00:05:46
Entonces 00:05:48
Accedo a las n posiciones 00:05:50
A las altos 00:05:53
Punto length posiciones 00:05:54
De este array aquí 00:05:55
Y por cada una de estas posiciones, ¿qué tengo que hacer? 00:05:57
Crearme un número 00:06:00
Entre 5 y 10 00:06:02
¿Vale? ¿Cómo me creo un número 00:06:04
Entre 5 y 10? Pues 00:06:06
int 00:06:08
puntuación es igual a 00:06:08
más 00:06:12
punto random 00:06:12
por 10 00:06:14
por 10 00:06:18
¿Qué hace esta cosa 00:06:24
aquí? Aparte de explotar 00:06:26
Esto me daría 00:06:28
un número entre 0 y 00:06:30
0,999999 00:06:32
¿Vale? 00:06:35
Multiplicado por 10 00:06:35
Si este número de aquí fuera un 0 00:06:36
0 por 10 00:06:39
y si este número 00:06:43
fuera 0,999999 00:06:46
este número aquí sería 00:06:47
entonces 00:06:49
esto sería 0 00:07:12
si más punto random 00:07:13
me da un 0, el límite más bajo 00:07:17
0x10, 0 00:07:19
si me diera el límite más alto 00:07:20
posible 0,999999 00:07:23
0,999999 00:07:26
x10 me daría 00:07:26
¿estamos de acuerdo? 00:07:27
ahora, este número de aquí, estamos todos de acuerdo 00:07:36
Que no es un int 00:07:38
Es un double 00:07:39
Porque este es un double 00:07:43
Multiplicado int 00:07:45
El resultado es un double 00:07:48
Y lo estoy metiendo en un int 00:07:50
Eso no le gusta 00:07:52
Porque un double no puede quedarse en un int 00:07:53
El double ocupa más en memoria que un int 00:07:55
No se puede hacer este cast directamente 00:07:58
Se lo tengo que decir 00:08:00
Por lo tanto le digo esto 00:08:01
Correcto 00:08:03
Esto dará siempre 0 00:08:06
Siempre 00:08:11
Porque este int lo aplica a este número de aquí 00:08:13
Este número es un número entre 0 y 0,9 00:08:18
Por lo tanto su parte entera será siempre 0 00:08:21
0 por 10 es 0 00:08:23
Esta cosa de aquí dará siempre 0 00:08:25
¿Dudas? 00:08:28
Claro, tengo que poner un paréntesis 00:08:38
Ahora, antes me hace esta cosa de aquí 00:08:40
Que el resultado es una cosa de este estilo 00:08:45
Y luego pilla solo la parte entera 00:08:48
Por lo tanto, aquí yo he hecho un número 00:08:50
Entre, ahora, esta cosa de aquí 00:08:52
Es entre 0 y 9 00:08:54
¿Sí? 00:08:55
Vale 00:08:58
Y si después de todo esto 00:08:59
Le sumo 1 00:09:01
Habría hecho un número de 1 a 10 00:09:03
Esta cosa de aquí 00:09:05
La hemos visto en muchos ejercicios 00:09:08
¿Vale? 00:09:10
O en algunos ejercicios 00:09:11
Pero en algunos ejercicios 00:09:12
Esto ha salido 00:09:15
hacer un número de 1 a 10 aleatorio y que lo pone por ahí lo hemos visto ahora pero era un 00:09:16
poquito más complejo y decía oye mira no lo quiero de 1 a 10 lo quiero de 5 a 10 lo de siempre no lo 00:09:22
sé hacer de 5 a 10 lo dejo así no lo sé hacer ni siquiera así pues me lo invento le pongo un 00:09:30
número le pongo de todos a 5 vale pero no me quedo 60 minutos aquí porque no sé sacar un número 00:09:37
ale no sacaré 10 5 pero adelante como lo hago esto de un número de 5 a 10 9 5 a 10 que decir 00:09:44
que el mínimo número tiene que ser 5 entonces cuando esto me da 0 quiero 5 y cuando esto me 00:09:57
0,99999 00:10:05
Quiero 10 00:10:06
¿Vale? Entonces, en realidad 00:10:08
Esto no quiero que sea un número 00:10:11
Entre 0 y 9 00:10:13
Sino quiero que sea un número entre 00:10:14
Y 5 00:10:20
¿Sí? Entonces 00:10:22
Así es, más o menos 00:10:24
Este es un número entre 0 y 5 00:10:26
Al que le sumo 00:10:28
Está 00:10:31
Si este de aquí 00:10:34
Me da 0, 0 por 6 00:10:37
más 5 00:10:41
5, por lo tanto el mínimo número es 00:10:43
y si esto da 0,9999 00:10:46
multiplicado 6 quedaría 00:10:49
5,999999 00:10:53
al que le sumo 00:10:55
5, 10,9999 00:10:56
pillo la parte entera, 10 00:10:58
por lo tanto, esto era una cosa parecida a así 00:11:04
número más, número menos 00:11:07
a lo mejor aquí tengo que poner 5 en vez que 6 00:11:08
seis que me que cinco pero la ya era más o menos por ahí si no sabía hacer esto 00:11:10
pues hacía de entre 1 y 10 me da guay 00:11:14
a ver lo voy a hacer por partes esto me da entre 0 y 0 9 en el 0 00:11:19
si lo multiplicó por 6 este de aquí me daría entre 0 y 5.9 entonces si a este 00:11:30
número de aquí le sumó 5 0 más 5 me daría 5 00:11:47
5 9 más 5 me daría 10.99 al que le pilló la parte entera y entonces me 00:11:55
sale aparte entre 55 la parte entera de 10,9 esta es la teoría no puede 00:12:08
equivocar de algo de un punto de ver lo pruebo y me lo que pasa 00:12:20
hay otras soluciones menos elegantes que éstas que es hago un número entre 1 y 10 00:12:33
in a while y mientras que ésta no sea superior a 5 pues lo vuelva a generar 00:12:44
gracias 00:12:52
inter punto 00:12:54
igual a cero 00:12:58
bile 00:13:03
punto 00:13:04
mayor que cinco 00:13:07
y or mayor que diez 00:13:10
genera un número 00:13:17
entre uno y cien 00:13:26
entre cero y noventa y nueve concretamente 00:13:27
y si no está en este rango de aquí 00:13:29
vuelve a hacerlo, vuelve a hacerlo, vuelve a hacerlo 00:13:32
hasta que te dé uno de cero 00:13:34
yo ni me voy a enterar porque esto lo hace en instantes 00:13:35
ahora es feo 00:13:38
Porque a lo mejor me ha tirado 00:13:40
A lo mejor un poquito 00:13:41
Tenga, así, entre 0 y 11 00:13:43
¿Vale? Esto estará allí 00:13:45
Sacando números entre 0 y 10 00:13:48
0 y 10, 0 y 10 00:13:50
Si es un número que no me vale, vuelve a tirar 00:13:51
Si es un número que me vale, sale 00:13:54
De aquí y ya está 00:13:56
¿Sí? Podría ser 00:13:57
Es otra forma de hacerlo, ¿vale? 00:13:59
Menos elegante que la otra, pero bueno 00:14:01
Bueno, dejamos esto 00:14:03
También 00:14:09
Esto en vez de 6 lo podría llamar 00:14:11
Número máximo 00:14:13
Y esto llamarlo número mínimo 00:14:15
Y luego hacer algo por ahí 00:14:17
¿Vale? 00:14:19
Y generar aquí 00:14:19
En vez de 5 y 6 00:14:21
Es lo que me pedían 00:14:23
Lo hago, ¿vale? 00:14:25
Tened en cuenta que esto lo estoy haciendo por cada posición de saltos 00:14:27
¿Vale? Entonces ahora que he generado 00:14:30
Una puntuación aleatoria, ¿qué hago? 00:14:31
¿Dónde la guardo? 00:14:36
En el array 00:14:38
¿En qué posición del array? 00:14:38
ni es igual a este punto me quiero ahorrar una variable hay algo 00:14:42
mal si hay dentro salto de y pongo un número 00:15:01
relatorio entre 5 y 10. Esto es saltos. La versión básica sin comprobar que el salto 00:15:16
exista, asumiendo que todo irá bien y que no hay problema. Pero esta era un guantera. 00:15:30
Ya estoy a un punto y medio de mi examen. Voy a por dos puntos y medio. No, tres puntos. 00:15:38
Media, ¿vale? 00:15:49
¿Qué hace media? 00:15:51
Public 00:15:54
No sé, es la doble 00:15:54
Media me dice 00:15:58
Este método calcula y devuelve 00:16:03
¿Vale? Entonces habrá un return 00:16:06
Entonces esto es double, no es void 00:16:07
¿Vale? 00:16:10
La media de todas las puntuaciones 00:16:11
Contenidas en el race altos 00:16:13
De un determinado atleta 00:16:15
¿Vale? Yo estoy en el atleta 00:16:16
Entonces si alguien llama media sobre un atleta 00:16:18
Lo que tengo que hacer es 00:16:20
¿Cómo calculo la media? 00:16:22
Tengo un método media 00:16:47
Dentro tiene una variable media 00:16:48
Donde dentro me calcularé la media 00:16:50
¿Vale? 00:16:52
Y al final la devuelvo 00:16:53
¿Vale? 00:16:54
¿Cómo se calcula la media? 00:16:55
Recorre la array 00:16:58
Venga 00:16:59
Aquí ya lo tengo 00:17:00
Y recorrerá la array 00:17:01
Lo copio 00:17:02
No necesidad de escribirlo otra vez 00:17:02
¿Vale? 00:17:04
Recorro toda la array 00:17:05
Solo que dentro haré una cosa distinta 00:17:06
¿Qué hago? 00:17:08
¿Y cómo lo hago? 00:17:12
En media 00:17:13
Me guardo 00:17:16
Lo que hay en media 00:17:18
Más 00:17:20
Saltos 00:17:21
De i 00:17:24
Al final de este for 00:17:25
Yo tendré dentro de media 00:17:29
La acumulación de toda la suma 00:17:31
De todas sus casillas 00:17:34
Esto lo hemos hecho 00:17:35
Hay ejercicios donde se pide media 00:17:37
Solo que esta no es la media 00:17:39
Esta es la suma de toda la puntuación 00:17:43
Como saco la media 00:17:45
Y como se 00:17:48
Cuantos saltos hay 00:17:54
Y ya esta 00:17:56
Algunos de vosotros se ha hecho aquí un int 00:18:06
De num saltos 00:18:10
Que luego ha ido sumando 00:18:13
Aquí por cada salto que sumo 00:18:18
Num saltos 00:18:20
Piú piú 00:18:21
Más más 00:18:23
Está bien, es inútil 00:18:24
Porque este dato ya lo tengo 00:18:29
Ya lo tengo aquí 00:18:31
Otra cosa es que 00:18:32
Tuviera que ver 00:18:34
Los números altos pueden no ser completos 00:18:36
Yo tengo 10 posiciones 00:18:38
Pero algunos son saltos que no cuentan 00:18:40
Entonces podría servir 00:18:43
O a lo mejor 00:18:45
Tú tienes 10 posiciones pero podrías haberme puesto 00:18:46
Solo 6 valores válidos 00:18:49
Y 4 valores dejarlos a menos 1 00:18:50
¿Vale? Porque cuatro saltos 00:18:53
Los últimos cuatro saltos no los has hecho 00:18:55
Y entonces aquí yo sumaría 00:18:56
Solo aquellos que tienen una valor 00:18:58
Que no sea menor 00:19:01
Pero no pedía nada de esto 00:19:01
Decía, tienes diez saltos, rellena todos los diez saltos 00:19:03
De hecho, cuando rellenamos los saltos, rellena todo 00:19:06
Por lo tanto 00:19:08
Esto 00:19:10
No me sirve 00:19:12
¿Dudas? 00:19:14
¿Vale? Entonces tengo 00:19:20
Mi método saltos, mi método media 00:19:21
Tened en cuenta que, os lo dije 00:19:23
no son estáticos, estos se hacen sobre los objetos 00:19:26
si yo lo haré sobre el objeto atleta 1 00:19:29
me usará saltos del atleta 1 00:19:31
si lo hago sobre el atleta 2, me usará saltos 00:19:34
del atleta 2, entonces me calculará la media del atleta 1 00:19:37
o del atleta 2, dependiendo sobre quien llama este método 00:19:40
sobre que objeto se llama este método 00:19:43
tercero y último, corte 00:19:46
corte que pilla un double 00:19:49
Dice, este método recibe una puntuación de corte como parámetro, no la media 00:19:52
O sea, vosotros os habéis inventado este método 00:19:57
No, este método recibe una puntuación de corte como parámetro 00:20:00
Y devuelve un booleano 00:20:04
Vale, entonces habrá un return de un boolean 00:20:06
Que indica si el atleta ha pasado o no la puntuación de corte en base a su puntuación media 00:20:08
O sea, que yo necesito la puntuación media de este atleta 00:20:17
Compararlo con la puntuación de corte que me han dado 00:20:22
Y si mi puntuación media es mayor de la puntuación de corte 00:20:26
Revalvo true 00:20:29
Y si no, revalvo false 00:20:30
Entonces, prototipo de este método 00:20:32
Es decir, que escribo ahora aquí 00:20:37
Public 00:20:39
Boolean 00:20:42
Corte 00:20:44
con dentro parámetro 00:20:47
double 00:20:49
doble 00:20:52
puntuación 00:20:56
de corte 00:20:58
me crea una variable 00:21:01
boolean 00:21:06
resultado 00:21:07
es igual a false por ejemplo 00:21:09
vale 00:21:12
y me pregunto si 00:21:13
La puntuación de corte 00:21:15
Es mayor 00:21:20
O igual 00:21:25
¿De qué? 00:21:27
Tengo que compararla con mi media 00:21:32
Si tengo un método 00:21:34
Que me calcula la media 00:21:40
¿Vale? Entonces no me la vuelvo a calcular 00:21:41
Llamo a este método 00:21:44
De aquí, cuando llamo a este método de aquí 00:21:46
Que será este método de aquí 00:21:48
Pues lo que hará es calcularme la media 00:21:50
Me la devuelve, quiero ser más 00:21:52
Puntilloso, porque media se tiene que llamar 00:21:54
Sobre un objeto, ¿qué objeto? 00:21:56
Este objeto 00:22:00
Entonces, si la puntuación que me ha dado 00:22:01
Es mayor 00:22:10
Pongamos mayor estricta 00:22:12
De mi media 00:22:14
Quiere decir que yo 00:22:17
No he pasado la nota de corte 00:22:18
Por lo tanto 00:22:19
Resultado 00:22:21
Es igual a falso 00:22:25
Podría 00:22:26
Esta parte de aquí evitarla 00:22:30
¿Vale? Porque ya era falso 00:22:32
Asumo que es falso 00:22:34
Si no 00:22:36
Si estoy en esta 00:22:37
En esta rama de aquí 00:22:40
Quiere decir que 00:22:42
Dis.media es mayor o igual 00:22:44
A la nota de corte 00:22:47
Por lo tanto la he aprobado 00:22:48
Por lo tanto el resultado es 00:22:50
True 00:22:52
Return 00:22:54
resultado 00:22:59
¿sí? ahora este if 00:23:00
es feo, ¿vale? 00:23:08
por esta cosa aquí, si ya era 00:23:10
falso, ¿por qué lo tengo que comprobar? está falso 00:23:12
entonces puedo cambiar 00:23:14
esto así 00:23:15
y hace lo mismo 00:23:17
si la puntuación de corte 00:23:22
es menor o igual a mi media 00:23:27
entonces cambia el resultado 00:23:29
otro, si no 00:23:30
no hará nada, como era ya false 00:23:32
pues se quedará false 00:23:34
Y dos, tres, cuatro 00:23:35
Ya he sacado un cuatro 00:23:48
Dudas 00:23:49
¿Y qué hace Atleta? 00:23:54
Nada 00:24:00
Atleta ahora mismo hace nada 00:24:00
¿Por qué? 00:24:04
Porque no tiene que hacer nada 00:24:05
No es algo que se arranca 00:24:07
Es un objeto 00:24:09
Es un paquete de información 00:24:10
Que junta 00:24:14
Informaciones de una entidad 00:24:15
con sus posibles comportamientos 00:24:18
¿vale? aquí estoy 00:24:21
modelizando un atleta que tiene esta información 00:24:23
y que puede hacer 00:24:25
estas tres cosas de aquí 00:24:26
estas son las cosas que me interesa que haga 00:24:28
este objeto ¿vale? ahora tendré 00:24:31
que hacer algo que 00:24:33
la use ¿vale? de hecho ya lo tengo 00:24:35
algo que lo use ¿vale? que es 00:24:36
el main y ya me lo daba 00:24:38
¿vale? pero 00:24:40
el main si os acordáis 00:24:43
Ahora lo miraremos 00:24:47
No trabajaba con atletas directamente 00:24:49
Trabajaba con grupos de atletas 00:24:51
Porque para hacer una competición 00:24:54
Que era mi main 00:24:56
Se necesita un grupo de atletas 00:24:57
Que compiten entre ellos 00:24:59
Entonces sigo con el ejercicio 00:25:01
Esta clase aquí la he acabado 00:25:03
Esto ya no la toco más 00:25:05
A menos que no haya hecho errores 00:25:07
O que quiera añadir otra cosa 00:25:09
Menor o igual 00:25:11
Entonces vamos a ver 00:25:16
Otro 00:25:24
Otra clase 00:25:25
La segunda clase se llamaba grupo 00:25:28
Que ya me la daban 00:25:29
Algo está, vale 00:25:31
Grupo 00:25:32
Tiene main, creo que no 00:25:34
Y como me la daban ya hecho 00:25:38
Copio 00:25:43
Lo que me daban ya hecho 00:25:44
Estaba ya un método 00:25:46
Implementado 00:25:53
Que es el método de genera nombre 00:25:55
Para crear un nombre aleatorio 00:25:56
Me lo pillo y lo copio allí 00:25:58
Y lo copio 00:26:00
Aquí dentro 00:26:07
¿Vale? Ya está, esto no lo tengo que tocar 00:26:09
Esto claramente 00:26:12
Si me lo leo un poquito 00:26:13
Entiendo, pues 00:26:16
Lo que me hace es generar 00:26:17
Un nombre, y me devuelve un string 00:26:20
Que será un nombre 00:26:22
Yo llamo esto y le me da un nombre, aleatorio 00:26:23
Sirve para cuando tendré que hacer 00:26:26
los atletas, para darle un nombre 00:26:28
para no llamarlos todos Paco 00:26:30
pues utilizo genera nombre, cosas así 00:26:31
nota 00:26:34
aquí venía esto 00:26:36
que no sé usar 00:26:37
el math.random porque 00:26:42
es la primera vez que lo veo, copio esto 00:26:44
y me hace un número entre ures 10 00:26:45
entre 0 y 9 00:26:47
pero ya salgo 00:26:49
esto se os da 00:26:51
ya he hecho, entonces no he visto nunca 00:26:54
en mi vida como se usa un math.random 00:26:56
pues aquí lo tienes 00:26:57
Y con los paréntesis correctos 00:26:58
¿Sí? 00:27:01
Vale 00:27:03
Entonces, ¿qué hace el grupo? 00:27:03
Vale, en esta clase 00:27:07
Se representa un grupo de atletas 00:27:08
¿Vale? El mismo grupo que compiten 00:27:10
En una determinada categoría 00:27:13
De una determinada modalidad 00:27:14
No creo que los saltos tengan categorías 00:27:16
En modalidad, categorías a lo mejor sí 00:27:19
Pero en modalidad no 00:27:20
¿Qué tiene un grupo? 00:27:22
Y me lo dice aquí, categoría 00:27:25
Es un número que representa distintas categorías de saltos 00:27:26
Que puede ser del 1 al 5 00:27:30
Vale, int, categoría 00:27:31
Luego está 00:27:34
Modalidad, vale 00:27:37
Es una letra que representa una modalidad de saltos 00:27:43
Vale, puede ser de A a E 00:27:46
¿Cuál es una letra? ¿Qué es? 00:27:48
¿Card? 00:27:51
Podría ser un string 00:27:56
Los strings, si os gusta 00:27:57
Y finalmente, y aquí es la parte un poquito más compleja de este ejercicio 00:27:59
Atletas 00:28:09
Atletas es un array de atletas 00:28:11
Entonces, atleta, array, atletas 00:28:14
Es un array, no de int, mas de atleta 00:28:22
¿Qué es atleta? Estos objetos de aquí 00:28:31
¿Vale? 00:28:33
Esta era la parte un poquito más compleja 00:28:35
De donde decía, si vais por aquí es porque 00:28:37
Habéis entendido los objetos 00:28:39
Habéis entendido que los objetos se pueden utilizar así 00:28:41
Y lo podéis utilizar 00:28:44
En alguno de los ejercicios que os mandé 00:28:45
O que hicimos las últimas veces 00:28:47
Se hacía algo parecido 00:28:49
No recuerdo que ejemplo era 00:28:51
Pero 00:28:54
¿Vale? 00:28:55
Entonces, y con esto 00:29:04
Estoy a cuatro y medio 00:29:06
Cuatro y medio 00:29:09
Y ahora venían 00:29:12
Los tres métodos que eran un poquito más complejos 00:29:16
¿Vale? Hasta aquí 00:29:18
Estos métodos tenían que ser sencillos 00:29:19
No se diferencian mucho de los ejercicios básicos 00:29:22
Que hemos hecho nosotros 00:29:24
¿Vale? 00:29:25
Estos de aquí 00:29:26
Eran relativamente sencillos 00:29:29
Esto es rellena una rey 00:29:31
Dado una rey 00:29:33
rellena todas sus posiciones 00:29:35
esto es, dado un array de int 00:29:37
cálcula su media 00:29:40
y este de aquí es 00:29:41
dado un array de int 00:29:43
y un numerito 00:29:46
dime si la media de este array de int 00:29:47
es superior o inferior a este numerito 00:29:49
los ejercicios que 00:29:52
si no los hemos hecho, hemos hecho algo muy parecido 00:29:53
¿vale? 00:29:56
grupo 00:29:58
primer ejercicio es 00:29:58
crea, ¿vale? crea de un int 00:30:02
Este método recibe un parámetro que representa cuántos atletas hay en un grupo 00:30:04
E instancia los atributos del objeto grupo sobre el que se llama 00:30:09
Asigna una categoría aleatoriamente, o sea un número entre 1 y 5 aleatorio 00:30:15
Una modalidad aleatoriamente, o sea una modalidad entre A y E aleatoria 00:30:20
Y rellena el array de atletas con tantos atletas como el valor que me ha pasado por parámetros 00:30:26
Crea, recibe un int 00:30:32
Si yo hago crea de 5, me tiene que crear un array de 5 atletas 00:30:33
Si yo pongo array de 27, pues un array de 27 atletas 00:30:37
Cada atleta que crea tendrá su nombre, que se generará con generaNombre 00:30:41
Cia, que será una categoría de modalidad la instancia a este método de aquí 00:30:48
Por lo tanto ya tendrá una categoría, una modalidad 00:30:54
Y finalmente 10 puntuaciones creadas alateramente 00:30:57
o sea que saltos esto tendrá ya exposiciones entonces vamos a hacer toda esta cosa aquí 00:31:03
para devolver algo no nos dice que y luego devolverá booleano deberá devolver a un 00:31:13
número no dice hago las cosas y no tengo algo algo nada por lo tanto es un hoy crea que recibe 00:31:23
un entero 00:31:32
que es 00:31:34
número de atletas 00:31:35
cuántos atletas 00:31:37
participan en este grupo 00:31:40
entonces por orden 00:31:42
asigno una categoría 00:31:44
aleatoriamente 00:31:46
tengo que hacer un número entre 1 y 5 00:31:47
¿cómo lo hago? 00:31:50
pillo esta línea de aquí 00:31:52
control c 00:32:05
control v 00:32:06
¿dónde lo guardo? 00:32:08
en categoría 00:32:10
Quiero ser más preciso 00:32:11
This.categoria 00:32:15
En la categoría de este objeto grupo 00:32:17
Porque es un objeto 00:32:19
Pongo un número entre 0 y 10 00:32:21
No, quiero un número entre 1 y 5 00:32:24
Por lo tanto, entre 0 y 5 00:32:27
No, pero más 1 00:32:30
Entre 0 y 5 00:32:32
Entre 0 y 4 00:32:34
Más 1 00:32:36
0, 4 más 1 entre 1 y 5 00:32:37
Que no lo sé hacer 00:32:42
Pues lo hago entre 0 y 5 00:32:46
O 0 y 4, que más me da 00:32:47
Os le doy a todos categoría 3 00:32:49
Siguiente 00:32:52
Modalidad 00:32:59
Modalidad es una letra entre A y E 00:33:02
¿Cómo lo hago esto? 00:33:05
Pues 00:33:09
Modalidad 00:33:09
Es igual a 00:33:11
y luego pongo modalidad 00:33:14
y luego digo que modalidad 00:33:23
es igual a modalidad 00:33:28
más 00:33:32
un número aleatorio 00:33:33
y esto lo considero un int 00:33:36
y todo esto 00:33:47
lo considero 00:33:50
Un char 00:33:53
¿Os acordáis cuando en uno de los ejercicios que hemos hecho 00:33:57
Habíamos dicho que un char era también un entero 00:34:05
Entonces podía hacer sumas con los enteros 00:34:09
Había un ejercicio donde tenía que cambiar de mayúscula a minúscula 00:34:12
De minúscula a mayúscula 00:34:16
Y simplemente era sumarle una cantidad o cosa por el estilo 00:34:17
No sé si lo habéis hecho o no 00:34:21
En clase esto salió 00:34:22
¿Vale? 00:34:25
Entonces, lo que voy a hacer es 00:34:27
Tratar este de aquí como un número 00:34:28
El número A 00:34:30
Es decir, A corresponderá a mayúscula 00:34:32
Corresponderá al, no sé, 96 00:34:34
Me lo invento 00:34:36
Le sumo a este 96 un número entre 0 00:34:37
Bueno, esto sería 00:34:40
Entre 0 y 4, si le sumo 0 se quedará 00:34:41
Si le sumo 1 verá B 00:34:44
Si le sumo 2 se vendrá C 00:34:45
¿Sí? 00:34:47
Oye, esto es demasiado complejo 00:34:50
Pillo un número 00:34:52
entre 1 y 5 00:34:56
¿sí? 00:35:01
switch 00:35:06
num 00:35:07
case 00:35:09
Idioma/s:
es
Autor/es:
Stefano Chiesa
Subido por:
Stefano C.
Licencia:
Reconocimiento - No comercial
Visualizaciones:
10
Fecha:
16 de diciembre de 2022 - 14:03
Visibilidad:
Clave
Centro:
IES ROSA CHACEL
Duración:
35′ 15″
Relación de aspecto:
1.78:1
Resolución:
1280x720 píxeles
Tamaño:
668.02 MBytes

Del mismo autor…

Ver más del mismo autor


EducaMadrid, Plataforma Educativa de la Comunidad de Madrid

Plataforma Educativa EducaMadrid