20241022 ProgrEstruct-Bucles-ejercicios_7 - Contenido educativo
Ajuste de pantallaEl ajuste de pantalla se aprecia al ver el vídeo en pantalla completa. Elige la presentación que más te guste:
Venga, qué edades más malas, ¿verdad?
00:00:00
Nada, ese furor se pasa, ¿eh? Tú tranquilo.
00:00:05
Eso se te pasa rápido.
00:00:10
Y luego ya te dedicas a ver series de Netflix.
00:00:14
Y ya, nada más.
00:00:17
Venga, y eres más feliz.
00:00:18
Venga, pues seguimos.
00:00:21
A ver.
00:00:23
Aquí no nos vale con el máximo.
00:00:25
Vale, vámonos a esta versión ya.
00:00:26
Bueno, nos creemos que funciona
00:00:27
Ya lo probamos luego con el mínimo entero
00:00:30
Vale, este ejercicio
00:00:32
A ver, el máximo ya lo tenemos hecho con esto
00:00:34
¿No?
00:00:36
Como máximos, máximos 1
00:00:39
¿Dónde he puesto máximos arriba?
00:00:40
Uy, perdón
00:00:44
Ah, bueno, claro, porque le he cambiado el nombre
00:00:45
Para
00:00:47
Por si la llamaba long
00:00:49
Para llamarla de otra manera
00:00:51
¿Vale? Pero entonces
00:00:53
Esta es así
00:00:55
Y esta es así
00:00:56
vale, entonces
00:00:58
inicializándolo al menor valor posible
00:01:01
ya sabemos que conseguimos
00:01:04
que la primera vez que entremos
00:01:06
el número ya es
00:01:07
mayor que ese primer menor valor
00:01:10
posible, luego
00:01:12
el máximo se queda con el primero
00:01:13
y a partir de ahí depende
00:01:15
vale, pues vamos a hacer en paralelo el mínimo
00:01:17
bueno, pues con el mínimo
00:01:20
es la misma idea
00:01:22
uno, el primero de todos
00:01:23
sería el mínimo
00:01:26
en ese momento, cuando solamente me he fijado
00:01:28
en el primero, pero según voy
00:01:30
avanzando a los siguientes
00:01:32
cuando llego al siguiente, que es menor
00:01:33
que este, lo sustituyo
00:01:36
por el mínimo, y avanzo al siguiente
00:01:38
que es menor que este, lo sustituyo por el mínimo
00:01:40
luego
00:01:42
vale, pues entonces
00:01:44
para incorporar eso
00:01:48
necesitamos
00:01:50
sí, pero el último
00:01:53
número yo ahora lo estoy incluyendo en la cuenta igual
00:01:56
Entonces
00:01:57
Claro, con lo que para el programa
00:01:58
Si yo meto solamente menos 3
00:02:03
Me va a salir el máximo menos 3
00:02:05
Porque es el mayor de todos los que he metido
00:02:06
Y el mínimo también me va a salir menos 3
00:02:07
Entonces
00:02:10
Con esta versión si yo pongo
00:02:12
7, 12, 8, menos 3
00:02:14
Como el último lo estoy poniendo en cuenta
00:02:16
Siempre me va a decir que el mínimo es el último
00:02:17
Entonces claro, tendríamos que modificar el programa
00:02:19
Para que el último lo tenga en cuenta
00:02:23
Pero
00:02:24
¿vale? pero vamos a entender
00:02:24
lo del mínimo primero, vale, pues
00:02:27
para el mínimo será otra variable distinta
00:02:28
otra, pues venga, otra variable
00:02:31
distinta y mínimo
00:02:33
ahora
00:02:34
para forzar
00:02:36
a que el primer número
00:02:38
sea mayor
00:02:40
perdón, sea menor
00:02:44
que este, la primera vez
00:02:47
ese tendría que ser más infinito
00:02:49
más infinito
00:02:51
no existe, pero existe el mayor valor
00:02:53
posible de los enteros.
00:02:55
Y el mayor valor posible de los enteros
00:02:56
es este.
00:02:59
Vale, pues inicialmente
00:03:02
el mínimo es el mayor valor posible.
00:03:03
Entonces, leemos
00:03:06
número. Esta parte
00:03:07
se queda ahí. Si el número es mayor que el máximo, actualiza.
00:03:08
Pero ahora me falta otra cosa más por hacer.
00:03:11
Me falta otra.
00:03:13
Vale.
00:03:15
¿El número es menor que el mínimo
00:03:16
hasta ese momento?
00:03:18
¿Es menor que el mínimo hasta ese momento?
00:03:20
Pues tengo nuevo mínimo
00:03:22
Mínimo igual a non
00:03:24
Y ya he terminado
00:03:25
Entonces estoy haciendo en paralelo
00:03:27
El máximo
00:03:30
Y el mínimo, las tres cosas
00:03:32
Leo el número
00:03:34
Y esto es independiente de esto, por esto esto no puede ir a un else if
00:03:35
Esto no va a un else if
00:03:39
Porque puede que se cumplan las dos a la vez
00:03:40
De hecho con el primer número
00:03:43
Se cumplen las dos
00:03:45
Con el primero es mayor que el máximo y menor que el mínimo
00:03:45
Entonces entraría en la primera
00:03:49
Claro, en la primera entran los dos
00:03:50
en la primera va a entrar en los dos
00:03:52
y el máximo se queda con el primer valor
00:03:54
y el mínimo se queda con el primer valor
00:03:56
entonces si aquí pongo
00:03:59
un el 6 le ha cagado
00:04:01
¿vale? porque el primer
00:04:02
número no se quedaría
00:04:05
como el mínimo en la primera
00:04:07
iteración, tenía que quedar
00:04:09
al final si vas a poner más de un número te da igual
00:04:10
pero se quedaría con el mínimo en la segunda
00:04:12
imagínate que el mínimo es el primero
00:04:14
no lo detectaría
00:04:16
si tú metes 1, 2 y 7
00:04:18
te diría que el mínimo es 2
00:04:20
Porque el primero lo ha ignorado.
00:04:22
¿Vale?
00:04:23
Entonces, si pones un if, el save, ya no.
00:04:24
¿Vale?
00:04:27
Entonces, repetimos.
00:04:28
Aquí, vamos leyendo números.
00:04:31
¿El número es mayor que el que es máximo hasta ese momento?
00:04:33
¿Que inicialmente el primer máximo es menos infinito?
00:04:36
Pues, si lo es, tengo nuevo máximo.
00:04:40
Vale, eso ya está hecho.
00:04:42
Ahora, otra tarea independiente de la anterior.
00:04:44
¿Este número que he leído es menor que el mínimo en un momento dado?
00:04:47
es menor que el mínimo en un momento dado
00:04:52
pues tengo nuevo mínimo y ya está
00:04:54
y son dos tareas independientes
00:04:55
esta sí que meterlas en un if-else-if
00:04:57
no tiene sentido
00:05:00
porque yo tengo que hacer las dos comprobaciones
00:05:01
tengo que hacer una y tengo que hacer la otra
00:05:04
porque son dos tareas independientes
00:05:06
a ver, si yo uso lo del
00:05:08
el-se-if
00:05:14
entonces
00:05:15
el primer número que meto
00:05:16
lo ignora
00:05:19
porque el primer número que meto
00:05:22
es mayor que el máximo seguro
00:05:23
entonces se guarda como máximo
00:05:25
entonces como esta condición va a ser true
00:05:26
esta ni la mira
00:05:29
entonces el efecto que yo quiero
00:05:31
que es que el mínimo se inicialice con el primero
00:05:33
no va a ocurrir
00:05:35
el mínimo se va a inicializar con el segundo
00:05:36
o con el tercero o con el cuarto
00:05:40
depende de cuando deja de ser falsa la primera
00:05:41
cuando deja de ser cierta la primera
00:05:44
entonces todos los demás
00:05:46
hasta que la primera sea falsa
00:05:47
y se ignoran, no se tienen en cuenta
00:05:50
para el mínimo, se ignoran
00:05:52
y los tengo que evaluar todos
00:05:53
los tengo que evaluar todos
00:05:55
¿vale?
00:05:57
¿entendido?
00:06:00
claro, entonces este código
00:06:02
ahora ya sí que sí, me hace el máximo y el mínimo
00:06:04
lo que pasa es que aquí como estoy
00:06:06
considerando el negativo también
00:06:08
el negativo
00:06:10
pues entonces el mínimo sé que va a ser
00:06:11
siempre el negativo, vamos a hacerlo
00:06:14
una pequeña modificación para que solo
00:06:16
procese los positivos y que el negativo
00:06:17
me sirva solo para marcar el fin
00:06:20
esa pequeña modificación es muy sencilla
00:06:22
oye, solamente
00:06:24
si n es mayor o igual que 0
00:06:25
hazme esto, no, perdón
00:06:27
hazme estas dos cosas
00:06:30
solamente
00:06:32
si n es mayor o igual que 0
00:06:33
hazme estas dos
00:06:35
vale, y ahora ya sí que
00:06:36
Este código te hace el máximo
00:06:45
El mínimo de todos los números
00:06:48
Que se han introducido
00:06:50
Hasta que se meta el negativo
00:06:52
Pero el negativo es el último número
00:06:54
Que no se tiene en cuenta
00:06:56
¿Vale? Entonces la primera versión
00:06:58
De arriba, esto
00:07:03
Lo vamos a dejar comentado, este while
00:07:04
Lo vamos a dejar aquí comentado
00:07:07
¿Vale?
00:07:11
Esta versión en la que lo hemos distinguido
00:07:15
A mano, lo vamos a dejar comentado
00:07:17
y esta quedaría mejor
00:07:18
vamos a ejecutarlo esta
00:07:20
a ver si... vale pues
00:07:25
6, 2, 7
00:07:31
8, 1
00:07:34
y menos 6
00:07:35
el máximo es 8
00:07:37
y el mínimo como no le he puesto
00:07:40
el system out pues no me lo muestra
00:07:41
un segundín que ponga
00:07:44
el mínimo para
00:07:48
el mínimo
00:07:49
es... un momento
00:07:57
que hacemos la prueba
00:07:59
Y ahora
00:08:00
Lo volvemos a ejecutar
00:08:02
Pues 4, 7, 1
00:08:07
9, 5
00:08:09
Y menos 1
00:08:11
El máximo es 9
00:08:12
Y el mínimo es 1
00:08:15
Bueno, habría que hacer más pruebas
00:08:16
Pero bueno, tiene pinta de que funciona
00:08:18
Dime Ana
00:08:20
¿Por qué estamos poniendo un if
00:08:22
Antes del otro if
00:08:25
Si para iniciar el bucle ya tiene que ser
00:08:26
Pero el número otro pide dentro del bucle
00:08:28
es que el número te lo pide aquí otra vez
00:08:30
entonces, este se refiere al anterior
00:08:32
al que leíste en la iteración anterior
00:08:35
¿vale?
00:08:36
ay, que divertido, ¿verdad?
00:08:40
vale
00:08:50
bueno, pues
00:08:50
y este ejercicio había que
00:08:53
como también tenía que mostrar mínimo y máximo
00:08:55
había que incorporarle la media
00:08:57
pero la media sería
00:08:59
meter en el bucle
00:09:01
un sumador, y ya está
00:09:03
¿Vale? Mete en el bucle un sumador
00:09:05
Y se acabó
00:09:07
Pero vamos, que eso
00:09:08
Sería poner una suma
00:09:10
Lo pongo aquí para que
00:09:13
Si alguien descarga
00:09:15
Esos ejercicios y
00:09:16
Pues lo complete
00:09:18
Pero es que la media ya la hemos hecho antes
00:09:20
Tendríamos una variable
00:09:24
Sumadora y esta variable
00:09:26
Sumadora se va incrementando
00:09:28
Según leo el número, la voy incrementando
00:09:30
Con todos los números, no, no, no, lo incremento
00:09:32
Y cuento
00:09:34
un contador que cuenta el total
00:09:35
un contador, luego la división y se acabó
00:09:37
¿vale? lo mismo que hemos hecho antes
00:09:39
estupendo, magnífico
00:09:40
¿bajará a dónde?
00:09:45
vale, pues entonces
00:09:53
vamos a hacer el 15,5
00:09:54
sí, el 15,5
00:09:57
que es sobre esto mismo, porque como ahora ya saltamos
00:10:00
a otras cosas y hasta llegar a máximo y mínimo
00:10:02
estamos por ahí abajo
00:10:04
saltamos ahora a otra estructura
00:10:05
o alguno negativo
00:10:08
por dios, que cosas
00:10:10
vamos a
00:10:11
hacer el
00:10:13
os voy a plantear el 15 y medio
00:10:15
que es
00:10:18
también para practicar máximos y mínimos
00:10:19
pero, ven
00:10:21
Cristian
00:10:23
¿qué te ha pasado?
00:10:30
algo te ha ocurrido
00:10:34
Bueno, bueno, pero
00:10:35
Esto es como el gimnasio
00:10:41
Pero de la mente
00:10:45
Pues ya está
00:10:47
Hay que generar masa encefálica
00:10:48
Masa cerebral
00:10:52
Que se pongan las neuronas potentes
00:10:55
Que músculo
00:10:58
No nos interesa, nos sobran
00:11:00
Venga
00:11:02
Pues eso
00:11:04
No nos vale para nada
00:11:06
Venga
00:11:08
Vale, pues os planteo
00:11:10
A ver
00:11:12
Con esto de las cadenas
00:11:15
Que tanto os guste los chats
00:11:18
Programa que
00:11:21
Voy a poner mayúscula
00:11:23
Para que
00:11:25
Que solicite
00:11:25
cadenas de
00:11:31
¿qué pasa? cadenas de texto
00:11:34
hasta que se introduzca
00:11:37
la cadena
00:11:45
fin
00:11:47
vale
00:11:49
pues el programa va a estar
00:11:51
introduzca cadena, dale, introduzca cadena
00:11:55
dale, introduzca cadena, dale
00:11:57
¿cuándo acaba? cuando esa cadena leída
00:11:58
es igual a fin.
00:12:00
Luego, mientras no equals fin,
00:12:04
está el boopie, bla, bla, bla.
00:12:06
Pues, ¿qué va a tener que hacer?
00:12:08
Cuando acabe, va a tener que mostrar
00:12:11
la cadena más larga que se ha introducido
00:12:13
y la cadena más corta que se ha introducido.
00:12:16
Luego, de nuevo, es hacerlo de máximo y mínimo.
00:12:20
Pero ahora la comparación no es en valor,
00:12:22
sino en tamaño de cadena.
00:12:24
¿Y qué tamaño tiene string?
00:12:27
punto Lens
00:12:28
ya no, pero ¿qué tamaño tiene un string máximo?
00:12:30
tu culo
00:12:35
a ver
00:12:35
ya, pero
00:12:37
el mínimo está claro que es 0
00:12:40
el máximo, ahí sí que vas a tener que
00:12:42
inicializar el mínimo a la primera cadena
00:12:45
a la primera
00:12:47
hombre, pero el tamaño siempre va a ser
00:12:48
como mucho
00:12:53
el Lens te lo guarda en IN
00:12:55
podrías también
00:12:58
inicializar tamaño
00:12:58
máximo
00:13:01
al máximo que se pueda
00:13:03
ganar un entero, claro
00:13:04
también podrías hacerlo así
00:13:06
porque aunque tú metas una cadena larguísima
00:13:07
si luego le sacas el length
00:13:10
es que te lo va a truncar
00:13:12
claro, porque no cabe más en esa variable
00:13:13
entonces
00:13:16
vale, vale, vale
00:13:17
a ver, todo en última instancia
00:13:18
acaba siendo texto en realidad
00:13:24
mostrará
00:13:26
la cadena
00:13:28
no, pues eso que no te ocurra
00:13:29
ahora unas cuantas tardes
00:13:33
y fines de semana, ¿qué ibas a hacer si no?
00:13:35
pues para hacer el tonto, para eso te puedo
00:13:37
estudiar programación, o tienes una alternativa
00:13:39
mejor
00:13:41
hombre, a ver, dormir sí
00:13:41
yo te hablo de tardes y fines de semana
00:13:45
que hay ablación
00:13:47
¿cómo no?
00:13:52
ah
00:13:54
de hablar nada
00:13:54
ampliación los viernes
00:13:55
las dos horas
00:14:00
pues eso
00:14:00
venga, pues a ver
00:14:04
vamos a ver como
00:14:05
- Subido por:
- Raquel G.
- Licencia:
- Todos los derechos reservados
- Visualizaciones:
- 8
- Fecha:
- 22 de octubre de 2024 - 18:17
- Visibilidad:
- Clave
- Centro:
- IES ROSA CHACEL
- Duración:
- 14′ 07″
- Relación de aspecto:
- 1.78:1
- Resolución:
- 1920x1080 píxeles
- Tamaño:
- 57.50 MBytes