Hace 1 año | Por Tom__Bombadil
Publicado hace 1 año por Tom__Bombadil

Comentarios

DeepBlue

#3 La solución más elegante es tirando por donde ha comentado #6 (no soy matemático).

Si uno quisiera hacerlo virtuoso a la par que "a la moda" para un caso más genérico (en lugar de

JohnSmith_

#c-8" class="content-link" style="color: rgb(14, 170, 116)" data-toggle="popover" data-popover-type="comment" data-popover-url="/tooltip/comment/3759928/order/8">#8 Pues creo que no lo ha entendido muy bien. El numero de libros no es multiplo de 9 y 12, solo es multiplo de 7.

Lo que mas me llama la atencion es que los comentarios del codigo que hace estan totalmente mal:

# Check if the number is divisible by 12 and 9 and has a remainder of 2 when divided by 7

Pero el codigo esta aparentemente bien lol

if number % 12 == 2 and number % 9 == 2 and number % 7 == 0:

editado:
lo que me hace pensar que pueden ser unas risas depurar un codigo programado y comentado por una IA lol

D

#9 es una máquina, ¿ qué esperas ?

Esteban_Rosador

Dos pastores hablaban mientras el rebaño de uno de ellos, bastante numeroso, entraba en el redil. El otro le preguntó: "¿Cómo sabes cuántas ovejas tienes?", a lo cual le contestó el primero: " Muy fácil. Las cuento de 2 en 2, y me sobra una; las cuento de 3 en 3, y me sobra una; las cuento de 4 en 4, y me sobra una; las cuento de 5 en 5, y me sobra una; las cuento de 6 en 6, y me sobra una; las cuento de 7 en 7, y no sobra ninguna".

¿Cuántas ovejas tenía el pastor?

@Esteban_Rosador

JohnSmith_

No veo que tenga mas solucion que la cuenta de la vieja. Se puede optimizar un poco, eso si, pues, si X es el numero de libros, X-2 es multiplo de 9 y de 12, es decir:

X-2 = a*9
X-2 = b*12

Lo que nos lleva a:

a/b = 12/9 = 4/3

Entonces podemos empezar a probar por valores de a y b tal que a/b sea 4/3, es decir, todos los valores de a y b tal que:

a/b = n*4/n*3 (esto no se expresarlo formalmente ahora mismo ... pero creo que se entiende, no? lol )

Hasta que lleguemos a un multiplo de 7

n = 1 -> a=4 -> b=3 -> X = 38 (no sirve, no es multiplo de 7)
n = 2 -> a=8 -> b=6 -> X = 74 (no sirve)
n = 3 -> a=12 -> b=9 -> X = 110 (no sirve)
n = 4 -> a=16 -> b=12 -> X = 146 (no sirve)
n = 5 -> a=20 -> b=15 -> X = 182 que es el resultado, porque este si que es multiplo de 7

D

Lo de decir que hay menos de 300 libros no es para denotar incultura. Es porque si X es solución, también lo es X+756

Fernando_x

Te voy a dar la respuesta que me da ChatGPT:

Primero, podemos determinar que el número de libros en la librería es un múltiplo de 12 y de 9. También sabemos que el número de libros es un múltiplo de 7. Por lo tanto, podemos concluir que el número de libros es un múltiplo de la expresión matemática "12 * 9 * 7", que es igual a 756.

Podemos determinar cuántos libros hay en la librería mirando cuántos libros sobran en los paquetes de 7 libros. Si no sobra ningún libro, entonces el número de libros debe ser un múltiplo de 7. Esto significa que el número de libros en la librería es 756, ya que es el único múltiplo de 756 que cumple con la condición de que sea menor que 300.

Por lo tanto, hay 756 libros en la librería.

Fernando_x

#c-7" class="content-link" style="color: rgb(14, 170, 116)" data-toggle="popover" data-popover-type="comment" data-popover-url="/tooltip/comment/3759928/order/7">#7 Sin embargo, si le pido que cree un programa que calcule ese número, lo hace sin problemas:


Sure, here is a script that will find a number under 300 that meets the criteria:

Copy code
# Start at the lowest possible number
number = 2

# Keep looping until we find a number that meets the criteria or until we reach 300
while number < 300:
# Check if the number is divisible by 12 and 9 and has a remainder of 2 when divided by 7
if number % 12 == 2 and number % 9 == 2 and number % 7 == 0:
# If it meets the criteria, print the number and exit the loop
print(number)
break
# If it doesn't meet the criteria, increment the number by 1
number += 1

# If the loop finishes without finding a number, print a message indicating that no number was found
if number == 300:
print("No number was found that meets the criteria")
This script will start at the number 2 and check if it meets the criteria (mod(12)=2, mod(9)=2, and mod(7)=0). If it does, it will print the number and exit the loop. If it doesn't meet the criteria, it will increment the number by 1 and check again. This process will repeat until a number is found that meets the criteria or until the number reaches 300, at which point the script will print a message indicating that no number was found.

h

Es la cuenta de la vieja pero la hace la maquinita:

 $x = 300;
 do
 while (!(($x % 7 == 0) && ($x % 12 == 2) && ($x % 9 == 2)));
 echo ($x);

cristina.werner

182 PROCEDIMIENTO Haciendo columnas de múltiplos de 7 , de múltiplos de 9 y restándole 2 y de múltiplos de 12 restándole 2 y buscando coincidencias empezando desde 294 que es el máximo múltiplo de 7 menor que 300. FIRMADO: la abuela

g

Lo puedes solucionar con Excel u otra hoja de cálculo de la siguiente manera:
-Si se agrupan en paquetes de 7 libros, no sobra ninguno --> Tiene que ser múltiplo de siete
-En una librería hay menos de 300 libros --> tiene que ser menor que trescientos
-- PRIMERA COLUMNA múltiplos de 7 menores de 300
--Si se agrupan en paquetes de 12, sobran 2 --> SEGUNDA COLUMNA será la función MOD(A1,12) o equivalente
--Si se agrupan en paquetes de 9, también sobran 2 --> TERCERA COLUMNA será la función MOD(A1,9) o equivalente
Usamos una CUARTA COLUMNA para encontrar la solución buscando en las columnas SEGUINDA y TERCERA cuando se cumple la condición RESTO = 2. IF((B1=2)*AND(C1=2),"SOLUTION",FALSE)

182-->26*7+0=182
182-->12*15=180+2=182
182-->20*9=180+2=182

Me imagino que buscabas una respuesta desde el punto de vista de las matemáticas, pero para mí es sencillo rsolverlo así, después es cuestión de arrastrar o de cambiar criterios o fórmulas para encontrar otras soluciones.

¿Te sirve de algo?

Tom__Bombadil

#1 Es una solución válida, claro. Es otra forma de hacer la cuenta de la vieja. Sentía curiosidad por ver si alguien veía alguna alternativa.

Pero me gusta la tuya

r

#1 yo había pensado tirar por esta vía, pero haciendo dos columnas de 7 hasta llegar a 300. De cada fila tomo 12 celdas y me sobran 2. Ahora con estas hago grupos de 12, ¿cuantos? Creo que habría que hacer de nuevo la tabla, ahora agrupando por 9. Ya es ver como hacer coincidir las dos agrupaciones sin olvidar los dos libros sobrantes.