Saltar navegación

20261023 Bucles_ejerc1 - 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 25 de octubre de 2026 por Raquel G.

2 visualizaciones

Descargar la transcripción

Ya automáticamente pienso, ah, datos de entrada, vale, hay datos de entrada, 00:00:00
tengo que leer del teclado, vale, muy bien, hay datos de entrada, pues, 00:00:04
planto esto, tengo que leer dos valores y ahora sumar todos los valores 00:00:08
comprendidos entre esos dos que cumplan no sé qué. 00:00:20
Entonces, ah, vale, tengo que sumar un montón de cosas, 00:00:24
tengo que sumar un montón de cosas, pues entonces automáticamente 00:00:27
ya hago el chip, vaya, tengo que hacer una suma acumulativa, ¿vale? 00:00:30
¿Vale? Como ya identificamos ayer, ese patrón algorítmico ya lo identificamos. 00:00:34
Anda, una suma acumulativa, ¿vale? Pues es una variable acumuladora que la inicializo a cero 00:00:39
y luego asociada a un bucle, siempre asociada a un bucle, exactamente igual que el contador, 00:00:44
el contador siempre asociado a un bucle, pues asociado a un bucle en esa variable acumuladora 00:00:50
se va sumando en cada iteración un sumandito nuevo, ¿vale? 00:00:56
Pues como identificamos que vamos a tener que hacer una suma acumulativa, pues nuestro programa va a tener que ser algo como esto, es una suma de enteros, pues una variable acumuladora o suma que empieza valiendo cero asociada a un bucle, asociada a un bucle y ahora dentro de ese bucle pues tendremos que hacer algo como esto, ¿vale? 00:01:01
Y este será mi resultado, vale, pues a ver, ¿qué tengo yo que ir sumando? Pues números que parten de un valor inicial A que me dan y cada vez es uno mayor, cada vez es uno mayor, cada vez es uno mayor, hasta llegar a uno final que me dan B, pues justo lo que hicimos. 00:01:26
Pues estos sumandos serán números que inicialmente sea el numerito primero A que me han dado, 00:01:53
ese numerito A primero que me han dado, todavía no he hecho la lectura, porque ese es el primer sumando, 00:02:04
y ahora, una vez que he incorporado cada sumando, el siguiente sumando, ¿cómo lo obtengo? 00:02:09
Pues incrementándolo de uno en uno. 00:02:18
vale, el primer sumando será 00:02:20
cada iteración 00:02:23
me incrementa sumando de uno en uno 00:02:25
me lo va incrementando y lo voy acumulando 00:02:27
a suma, vale 00:02:29
ya me voy aproximando 00:02:31
pero, releyendo 00:02:32
esto y dejándolo bien entendido 00:02:35
cuidado, a esa 00:02:37
suma, solo 00:02:39
incorpora los que 00:02:41
sean múltiplos de 5, cuidado 00:02:43
no los sumes todos 00:02:45
no todos los sumandos 00:02:47
se van a ir incorporando a la suma, solo los que sean múltiplos de 5, ah vale, pues no pasa nada, entonces cuidado, esto estará condicionado a que sumando sea múltiplo de 5, 00:02:49
que ya sabemos como calcular si un número es múltiplo de otro, si el resto de dividirlo entre otro es 0, vale, pues ya se va aproximando, 00:03:03
A esta suma acumulativa voy sumando un número, otro número, otro número, que voy obteniendo, incrementándolos de uno en uno, de uno en uno, pero ¿lo sumo todos? No, cuidado, solo sumo estos, vale, muy bien. 00:03:12
me siguen faltando cosas 00:03:28
por supuesto inicializar A 00:03:34
ese es un dato que tendré que leer por teclado 00:03:37
pero vamos a acabar con el bucle 00:03:40
condición de finalización del bucle 00:03:46
sumo todos partiendo desde el A 00:03:50
hasta el fin de los tiempos 00:03:52
sigo incrementando sumando hasta el fin de los tiempos 00:03:54
de forma que se vayan sumando 00:03:57
todos los múltiplos de 5 00:03:59
partiendo desde la A hasta el final de los tiempos 00:04:01
no, no tiene sentido 00:04:03
que sea hasta el final de los tiempos 00:04:05
ningún bucle debería ser infinito 00:04:06
¿qué dice aquí? 00:04:08
ah, vale, sólo los comprendidos entre A y B 00:04:10
cuando hayas llegado a B 00:04:13
no sumes más 00:04:14
vale, pues entonces, ¿qué condición de finalización podemos poner? 00:04:15
lo mismo clavado que hacíamos ayer 00:04:21
lo mismo 00:04:23
¿qué condición de finalización pondríamos? 00:04:23
Yo sumo primero el a, luego el a más 1, el a más 2, el a más 3, el a más 4, ¿no? 00:04:34
El a más 5 lo vuelvo a sumar, el a más 6, el a más 7, el a más 8, ¿no? 00:04:40
El a más 10 lo vuelvo a sumar, ¿vale? 00:04:45
Pero esto ya sí suman todos los múltiplos de 5 partiendo desde el a, ¿no? 00:04:48
En algún momento paro de sumar. 00:04:52
Entonces, esa parada la tengo que reflejar con esta condición. 00:04:55
Entonces, ¿qué condición podría Isabel? 00:05:00
Recordad que la condición de ahí tiene que ser la negada de la que me hace parar. 00:05:02
¿Cuándo querremos parar de sumar? 00:05:08
¿Cuándo querremos parar? 00:05:11
Decidme esa condición en función de las variables que tengo aquí. 00:05:13
Suma, sumando, que son las únicas que tengo. 00:05:16
¿Cuándo querremos parar de sumar? 00:05:18
En un enunciado que me dice sumar todos los comprendidos entre A y B, patatín. 00:05:21
¿Cuándo querremos parar de sumar? 00:05:26
Vale, pero decídmelo directamente en sentencia Java. 00:05:29
¿Cuándo qué variable 00:05:32
sea igual a qué variable? 00:05:35
¿O cómo? 00:05:37
Cuando A sea igual a B. 00:05:37
Cuando A sea igual a B. 00:05:40
Pero aquí en ningún momento 00:05:41
se toca A y B, con lo cual... 00:05:43
Cuando sumando sea igual a B. 00:05:44
Vale, cuando sumando sea igual a B. 00:05:46
¿Vale? 00:05:49
El B entonces no lo vas a sumar. 00:05:51
Vamos a suponer que lo queremos incluir. 00:05:53
¿Vale? 00:05:56
Entonces, ¿cómo modificamos esa sentencia? 00:05:57
Es lo mismo que nos pasó en el ejercicio de ayer. 00:05:59
mientras sea diferente de n 00:06:01
si tú quieres parar 00:06:03
cuando sumando sea igual a b 00:06:05
entonces la que tienes que poner ahí 00:06:07
sería la negada 00:06:09
mientras sumando sea diferente de b 00:06:10
la negada 00:06:13
y si ponemos mientras sumando sea 00:06:15
diferente de b 00:06:17
si pones aquí 00:06:18
mientras sumando sea 00:06:22
diferente de b 00:06:25
dato que tendremos que haber leído por ahí 00:06:27
claro, aquí nos falta esa parte 00:06:29
pero esa parte es la más fácil 00:06:31
leer A y B 00:06:32
si lo pones así 00:06:34
el B no se llegaría a sumar 00:06:36
es lo que nos pasaba ayer 00:06:39
si poníamos mientras sumándose 00:06:41
diferente de N 00:06:43
entonces ¿cómo modificamos la sentencia? 00:06:44
para que fuera más general 00:06:47
claro, literalmente 00:06:48
¿qué pusimos? 00:06:53
¿qué tendríamos que poner? dictármelo tal cual 00:06:54
vale 00:06:56
Eso, algo mejor, ¿no? 00:06:59
Mientras sumando sea menor o igual que B. 00:07:02
Mientras sumando sea menor o igual que B, entro. 00:07:09
Entonces, el primero que ya no me suma es el B más 1. 00:07:12
Ese es el primero que ya no me suma. 00:07:16
Bueno, pues esa condición, vale, ya la tenemos. 00:07:21
Vale, pues este bucle está. 00:07:32
Mientras sumando sea menor o igual que B, 00:07:35
Voy incorporándolos a la suma acumulativa, pero solo los incorporo si son múltiplos de 5, ¿qué nos falta? Leer los datos de entrada A y B, mis datos de entrada A y B no los he leído, ¿vale? Pues vamos a leerlos, ¿vale? 00:07:37
Leemos A y leemos B. Esto ya estaría, pero me han dicho, ojo, cuidado, si el usuario introduce una más grande que B, entonces intercámbialo, porque si no los intercambiamos y el usuario introduce una que es mayor que B, el resultado final del programa, la suma final, ¿cuánto me saldría? 00:08:12
¿Vale? Este es mi programa. Imaginaos que el usuario introduce una A igual a 7 y un B igual a 1, que es la situación en la que queremos hacer el intercambio. 00:08:57
Si no hiciéramos el intercambio, este programa, ¿qué valor me daría para suma? 00:09:11
Una vez que ya he terminado, que termina con esta línea que aquí no ha cabido, 00:09:18
¿qué valor me mostraría para suma en el caso de que yo introduzca una más grande que B? 00:09:22
Venga, valor final del programa 00:09:37
O sea, resultado final, suma 00:09:44
Si yo le introdujera un A mayor que B 00:09:46
¿Qué valor da? 00:09:48
¿O si da error de ejecución? 00:09:51
¿Qué pasaría? 00:09:54
¿Error? ¿En qué momento daría error? 00:10:03
No, ¿en qué línea? 00:10:08
¿Cuándo daría un error? 00:10:09
¿Pero por qué? ¿Debido a qué? 00:10:15
Porque no puede sumar 00:10:17
¿Por qué no puede ser? 00:10:18
Si sumando es mayor que B 00:10:23
No tiene que hacer nada 00:10:24
vale, pero eso no es un error 00:10:25
simplemente este while 00:10:27
¿cuántas veces ejecutaría? 00:10:30
claro, pero eso no es un error 00:10:32
el programa no daría error 00:10:35
un while ya hemos dicho muchas veces 00:10:36
si la primera vez que llegamos 00:10:39
por allí, en la primera iteración 00:10:42
la condición es falsa 00:10:44
el while no se ejecuta nunca 00:10:45
y ya está, y eso no produce error 00:10:47
en la ejecución, simplemente en este programa 00:10:49
el while nunca llega a ejecutarse 00:10:51
con lo cual si el while 00:10:54
nunca llega a ejecutarse, el resultado final 00:10:56
del programa será 00:10:58
cero, ¿verdad? 00:10:59
¿Vale? Entonces, si A es mayor 00:11:01
que B, 00:11:04
esto es falso 00:11:06
de partida, es falso, 00:11:08
nunca entramos en el 00:11:10
while, la suma no se incrementa 00:11:12
en nada, y da cero. 00:11:14
Otra cosa es que con el usuario 00:11:16
que nos ha pedido el programa, le digamos, 00:11:18
¿es eso lo que quieres? Si A es 00:11:20
mayor que B, ¿quieres que te dé cero? 00:11:22
Entonces, él nos dice, no, no, 00:11:24
Lo que te he dicho en el enunciado, si A es mayor que B, entonces intercámbiame A por B, porque sí que quiero sumar todos los comprendidos entre A y B, pero a lo mejor yo te los estoy dando en orden cambiado, yo lo que quiero es que me hagas la suma igualmente, aunque yo te dé A y B en orden correcto, en orden cambiado. 00:11:26
entonces una vez que él nos dice eso 00:11:44
ya es cuando nosotros decimos 00:11:46
vale, pues entonces voy a tener que incorporar a mi programa 00:11:48
una sentencia 00:11:51
que intercambie los valores de A y B 00:11:52
solo si 00:11:55
A es mayor que B 00:11:56
vale, pues una vez que hemos identificado 00:11:58
que eso es lo que tenemos que hacer 00:12:00
pues ya sabemos programar esto 00:12:02
solo en el caso de que A sea mayor que B 00:12:03
tengo que hacer algo, solo en ese caso 00:12:07
¿eso qué es? pues unir, lógicamente 00:12:09
pero nosotros con lo que sabemos, sabemos programar cualquier cosa que nos pidan, cualquiera, vale, pues entonces aquí, ojo, que si, y solo en ese caso, si a es mayor que b, ojo, porque en ese caso, tengo que intercambiar, aquí, si a es mayor que b, ojo, porque solo en ese caso, solo en ese caso, 00:12:11
tengo que intercambiar los valores 00:12:38
de las variables 00:12:41
y eso ya hemos resuelto como hacerlo 00:12:41
voy a guardar 00:12:47
en una variable que me invento 00:12:51
solo como variable temporal 00:12:53
voy a guardar lo que tiene A 00:12:55
para no perderlo, lo guardo ahí 00:12:56
ahora 00:12:59
a mi variable A 00:13:00
que ya tengo guardado 00:13:04
lo que tiene, con lo cual me da igual pisarla 00:13:05
sobre escribirla con lo que sea 00:13:07
le voy a asignar lo que tiene B 00:13:09
vale, y a B 00:13:11
¿qué le asigno? lo que tenía 00:13:16
A, ¿y qué era lo que tenía 00:13:17
A? esto 00:13:20
vale, eso es lo que acabamos 00:13:21
de explicar hace 00:13:26
un ratín 00:13:28
vale, me invento 00:13:29
yo una variable auxiliar 00:13:32
aquí 00:13:34
tengo yo mis A y mis B 00:13:36
a mi variable 00:13:38
auxiliar le asigno 00:13:42
lo que tenía 00:13:44
A, imaginaos que A tiene 7 00:13:46
y B 1, le asigno 00:13:48
lo que tiene A, el 7, vale, pues el 7 00:13:50
se queda ahí guardadito temporal 00:13:52
ahora mi variable A 00:13:53
ya la puedo pisar y asignar 00:13:56
lo que tenía B, se queda con el 1 00:13:58
y ahora ya 00:14:00
mi variable B 00:14:02
le asigno lo que tenía A 00:14:03
de antes, que lo he conservado aquí 00:14:06
para no perderlo 00:14:07
en la sobrescritura anterior 00:14:09
pues le asigno el 7, el 1 desaparece 00:14:11
entonces estas 3 00:14:14
sentencias de código consiguen como resultado final el intercambio y efectivamente aquí me ha 00:14:16
aparecido una variable que he necesitado usar como valor temporal es grave pues no es grave porque 00:14:22
qué le pasa a esta variable pues lo que explicamos ayer donde la he declarado yo esta variable la 00:14:29
he declarado dentro de este bloque un bloque es un código entre llaves la he declarado aquí luego 00:14:35
cuando este código termina de ejecutarse 00:14:41
que es aquí fuera 00:14:44
cuando ese bloque ha terminado 00:14:46
todas las variables declaradas 00:14:47
aquí dentro desaparecen 00:14:50
pues aux fuera 00:14:52
ya deja de molestar 00:14:53
tuvo 00:14:56
su función aquí dentro 00:14:57
pero una vez que ya cumplió 00:14:59
su función no la quiero para nada 00:15:02
pues la declaro aquí dentro 00:15:03
y cuando este bloque termina de ejecutarse 00:15:05
esta variable aux 00:15:08
ha desaparecido 00:15:10
A y B por supuesto no han desaparecido 00:15:10
porque A y B están declaradas aquí arriba 00:15:13
solo desaparecen 00:15:15
las que estén declaradas dentro 00:15:18
de este bloque 00:15:19
yo podía haber declarado aux fuera 00:15:20
también 00:15:25
pero entonces aux va a estar existiendo 00:15:25
ahí esa cajita toda la vida del programa 00:15:29
si yo aux 00:15:31
la hubiera declarado aquí fuera 00:15:33
int aux 00:15:35
y aquí me hubiera limitado a usarla 00:15:37
pues sí, el efecto del programa 00:15:39
es el mismo 00:15:41
es idéntico el efecto del programa 00:15:42
pero 00:15:44
a cambio 00:15:46
mi variable aux 00:15:48
con este 7 00:15:50
se queda ya para siempre 00:15:53
todo el programa ahí en memoria 00:15:56
esa variable 00:15:57
y que necesidad de tener una variable ahí en memoria 00:15:58
ocupando 4 bytes de memoria 00:16:01
que necesidad 00:16:03
si solamente la voy a usar 00:16:04
en este bloque, solo aquí 00:16:07
pues si solo la voy a usar en este bloque 00:16:08
la declaro local a este bloque 00:16:11
vale 00:16:14
la declaro local a este bloque 00:16:15
y mucho mejor 00:16:19
me garantizo que desaparece 00:16:21
se acabó este espacio 00:16:23
y se acabó todo cuando el bloque termina 00:16:25
y esto ya no es solo 00:16:28
por un tema de ahorrar memoria 00:16:31
porque 4 bytes de RAM que ocupa un int 00:16:33
4 bytes de RAM no van a ningún lado 00:16:35
esto sobre todo 00:16:37
es por 00:16:39
evitar posibles 00:16:40
errores derivados de que haya 00:16:43
demasiadas variables en un momento dado 00:16:45
si yo estoy en un punto del programa 00:16:47
en el que tengo mil variables 00:16:50
declaradas, de las cuales solo estoy 00:16:51
usando tres, pues hay 00:16:53
un montón de variables de las que yo no soy consciente 00:16:55
que están ahí declaradas porque las 00:16:58
usé en un momento dado, con sus nombres 00:16:59
y a lo mejor 00:17:02
las uso sin querer 00:17:03
creyendo que estoy haciendo otra cosa 00:17:05
y porque me confundo 00:17:07
escribiendo el nombre 00:17:09
entonces abono el terreno para errores 00:17:10
porque tengo un montón de variables 00:17:13
con sus nombres, ahí y a lo mejor 00:17:15
me confundo, pongo el nombre de otra 00:17:17
y estoy usando esa otra 00:17:19
entonces lo ideal es que en cada 00:17:21
punto del código solo existan 00:17:23
las variables que estoy usando 00:17:25
¿qué necesidad de que la variable 00:17:26
aux exista todo el programa? 00:17:29
¿para molestar hay una variable aux y que yo 00:17:31
escriba aux sin querer y la lié? 00:17:33
¿creyendo que 00:17:36
hago una cosa y no estoy haciendo otra? 00:17:37
pues a declararla localmente 00:17:39
luego todas las variables 00:17:41
se declaran lo más local que se pueda 00:17:44
en el bloque más interno en el que se van a usar 00:17:46
en el bloque más interno 00:17:48
y esto es importante 00:17:49
entender lo de las variables locales 00:17:52
y su ámbito, lo que vimos ayer 00:17:54
bueno pues entonces 00:17:56
gran parte del programa 00:18:00
está hecho 00:18:02
ya está hecho lo de 00:18:02
leer los valores de entrada 00:18:05
intercambiarlos 00:18:07
si A es mayor que B 00:18:08
y ahora ya 00:18:11
hacer la suma 00:18:13
¿vale? 00:18:15
entonces, antes de 00:18:17
bueno, nada 00:18:19
sí 00:18:21
venga, vamos a 00:18:22
a incorporar esto que hemos dicho 00:18:27
ignoremoslo 00:18:29
pero vamos ahora ya a incorporarlo 00:18:30
una pequeñita validación de datos 00:18:33
vamos a incorporar, oye tú 00:18:35
no le dejes al usuario 00:18:39
introducir valores negativos 00:18:41
para A o B, no le dejes 00:18:44
entonces, ¿qué significa no dejarle? 00:18:46
tú no puedes salir del ordenador 00:18:50
y agarrarle la mano para que no le dé 00:18:51
al menos, lógicamente 00:18:54
entonces, no dejarle 00:18:55
significa 00:18:58
meterle ahí en un bucle 00:18:59
del que no salga 00:19:01
hasta que no introduzca un valor positivo 00:19:03
es decir, eso es validar un dato 00:19:06
este 00:19:12
next in de aquí 00:19:14
que yo he hecho 00:19:16
él ahí puede meter 00:19:17
cualquier número entero que le den la gana 00:19:20
menos 12, 13, cualquiera 00:19:22
puede meter, y yo no tengo forma 00:19:24
de evitarlo, no voy a salir del ordenador 00:19:26
a agarrarle la mano 00:19:28
lo único que puedo hacer 00:19:29
es meter esto en un bucle 00:19:32
de tal forma que 00:19:34
mientras este número sea negativo 00:19:36
lo vuelva a pedir, y si es negativo 00:19:38
lo vuelva a pedir, y si es negativo 00:19:40
lo vuelva a pedir, es lo único que puede hacer 00:19:42
es mi única manera de obligarle 00:19:44
no dejarle salir de un bucle 00:19:46
de recogida de datos 00:19:48
hasta que el dato que me da 00:19:49
no cumpla exactamente lo que 00:19:51
yo necesito que cumpla 00:19:54
entonces 00:19:56
pues ya está, vamos a meter 00:19:58
esto en un bucle 00:20:00
y ahora 00:20:01
aquí que bucle pondríais, un while o un do while 00:20:03
¿Qué bucle pega ahí de las dos estructuras que tenemos? 00:20:08
While o do while. 00:20:14
¿Recordáis la diferencia entre while y do? 00:20:19
Pues según esa diferencia, teniendo en cuenta que yo ya he concluido que tengo que meter esto en un bucle, 00:20:22
para que esté todo el rato leyendo mientras sea negativo. 00:20:29
¿Lo meteríais en un bucle while o lo meteríais en un bucle do while? 00:20:32
Venga, que alguien diga algo. 00:20:39
cuando procedía 00:20:40
cuando se adaptaba más 00:20:50
poner un bucle do-while 00:20:52
¿Perdón? 00:20:53
¿Tenía que revisar algo primero? 00:21:00
Más o menos 00:21:06
o sea, cuando 00:21:07
la primera ejecución del código 00:21:08
tenía que hacerse sí o sí 00:21:11
cuando lo que había dentro del bucle 00:21:13
una primera vez 00:21:15
queríamos que se hiciera sí o sí 00:21:17
y ya las siguientes condicionadas 00:21:19
¿Vale? 00:21:21
Entonces, en este caso 00:21:23
¿Necesitamos que se haga una primera vez sí o sí? 00:21:25
Sí, porque es un bucle de lectura de datos. 00:21:30
Entonces, la primera hay que hacerla. 00:21:32
La primera hay que hacerla. 00:21:34
Y las siguientes se harán o no dependiendo de la condición que sea. 00:21:36
En este caso, si ya es negativo. 00:21:40
Con lo cual, aquí, lógicamente, pega mucho mejor un do while. 00:21:42
pega mejor un do while 00:21:48
donde la condición será 00:21:52
¿cuál? 00:21:54
¿qué condición pongo ahí? 00:21:56
bueno, ahora estoy solamente leyendo el a 00:22:05
luego el b lo hago por libre 00:22:06
¿a mayor que 0? 00:22:08
piensa que esta es la condición 00:22:19
que mientras se cumpla 00:22:21
vuelvo otra vez arriba 00:22:23
y vuelvo otra vez arriba 00:22:25
cuando deja de cumplirse es cuando salgo 00:22:26
¿qué condición tendría que poner ahí? 00:22:28
Mientras esa condición se cumpla, 00:22:38
tengo que volver a pedirlo. 00:22:41
Tengo que volver a pedirlo. 00:22:42
Pues, ¿qué condición pondría? 00:22:43
Mientras a A le pase algo, 00:22:55
tengo que volver a pedir. 00:22:58
¿El qué? 00:22:59
Claro. 00:23:04
Me han dicho que yo no permita negativos. 00:23:05
Lo que acabo de decir es, 00:23:09
mientras el usuario meta negativos, 00:23:11
se vuelve a pedir, y se vuelve a pedir, y se vuelve a pedir. 00:23:13
¿Vale? 00:23:16
Es mi única forma de asegurarme 00:23:16
que lo que introduce sea positivo 00:23:19
entonces 00:23:21
mientras a sea 00:23:23
menor que cero, ahí le tengo 00:23:25
¿vale? 00:23:27
me falta aquí la llave 00:23:32
vale, mientras a sea 00:23:33
negativo, otra vez arriba 00:23:38
y otra vez arriba, entonces la primera 00:23:40
vez es incondicional, me pide el primero 00:23:42
y ya las siguientes 00:23:44
las pide o no 00:23:46
en función de si ese es negativo o no 00:23:48
Luego este es un bucle que está validando el primer dato y ahí se queda atascado, pues lo mismo con el B, exactamente lo mismo con el B, porque el B tampoco puede ser negativo, pues esto igual y ya está, mientras B sea negativo vuelve a pedir B y vuelve a pedir B y vuelve a pedir B y así todo el rato. 00:23:50
entonces no salimos de este bucle 00:24:34
hasta que el dato introducido sea mayor o igual que cero 00:24:39
vale 00:24:44
ahora ya parece que está todo 00:24:53
leemos los datos 00:24:58
pero le tenemos al usuario metido en un bucle 00:24:59
metido en un bucle 00:25:03
mientras lo que introduzca no sea como queremos 00:25:04
mientras no cumpla nuestro patrón 00:25:07
cuando ya hemos salido de los dos bucles 00:25:09
a y b son mayores o iguales que 0 00:25:13
si a es mayor 00:25:15
que 20, cambiamos, vale 00:25:18
y ahora ya sí, pues hacemos 00:25:19
la suma 00:25:21
vale 00:25:23
entonces 00:25:28
esto ya en principio, pues nos tendría que 00:25:31
funcionar 00:25:34
introduzca la 00:25:35
que le pongo el menos 3, pues ahí se está 00:25:37
ahí se está, hasta que yo no 00:25:40
introduzca un número positivo 00:25:42
pues el 8 00:25:43
muy bien 00:25:45
Ah, vale, es que he hecho copia y pega 00:25:46
En el de abajo 00:25:51
Y no he puesto introduzca B 00:25:52
Vale, entonces 00:25:54
Parece que me está pidiendo A otra vez 00:25:56
Pero no 00:25:59
Vale, pues lo paro, introduzca B 00:25:59
Pues venga 00:26:02
Ahora ya sí 00:26:06
Lógicamente el menos 4 no 00:26:12
Pues venga, le doy el 9 00:26:14
Ahora ya me ha dejado el B 00:26:16
Si al B le diera menos 1, pues tampoco 00:26:18
Dame el b 00:26:21
El 1 00:26:22
Se los he dado cambiados, con lo cual él va a intercambiarlos 00:26:24
A por b y me va a sumar 00:26:27
Todos los múltiplos de 5 entre 1 y 9 00:26:29
Que solo hay 1, 5, con lo cual me tendrá que sacar 5 00:26:31
Vamos a ver 00:26:33
Efectivamente 00:26:35
La suma de todos los múltiplos de 5 00:26:36
Comprendidos entre 1 y 9 00:26:38
Es 5 00:26:41
Porque solo hay 1 00:26:43
Vale, pues ya está 00:26:46
Vamos a parar aquí un momentín 00:26:49
Vale 00:26:52
Materias:
Programación
Niveles educativos:
▼ Mostrar / ocultar niveles
  • Formación Profesional
    • Ciclo formativo de grado básico
      • Primer Curso
      • Segundo Curso
    • Ciclo formativo de grado medio
      • Primer Curso
      • Segundo Curso
    • Ciclo formativo de grado superior
      • Primer Curso
      • Segundo Curso
Subido por:
Raquel G.
Licencia:
Todos los derechos reservados
Visualizaciones:
2
Fecha:
25 de octubre de 2026 - 19:20
Visibilidad:
Clave
Centro:
IES ROSA CHACEL
Duración:
26′ 54″
Relación de aspecto:
1.78:1
Resolución:
1920x1080 píxeles
Tamaño:
103.30 MBytes

Del mismo autor…

Ver más del mismo autor


EducaMadrid, Plataforma Educativa de la Comunidad de Madrid

Plataforma Educativa EducaMadrid