domingo, 29 de marzo de 2009

Sobre una propuesta de Claudio

Claudio, en su blog de Números, nos propuso hace unos días esta cuestión:

a) Encontrar todos los primos cuyo dígitos son consecutivos y están ordenados de menor a mayor (yo encontré cinco), y de mayor a menor.


No resistí la tentación de programarlo en el Basic de la hoja de cálculo, con estos resultados:

Primos con cifras ascendentes:

Código

Sub buscaprimos(n) n es una cifra igual a 1,3,7 ó 9
dim m,p,n

m=n:p=n

for i=1 to n
p=p-1 Cifras crecientes
m=10^i*p+m Se forma el número con cifras crecientes
if esprimo(m) then msgbox(m) Si es primo, se comunica
next i

End Sub

Le fui dando a n los valores 1,3,7 y 9, me resultaron las soluciones 23, 67, 89, 4567 y 23456789

Para los descendentes sólo hay que corregir un detalle:

Sub buscaprimos(n) n es una cifra igual a 1...9 (no tiene que ser impar)
dim m,p,n

m=n:p=n

for i=1 to n
p=p-1 Cifras decrecientes
m=10*m+p Se forma el número con cifras decrecientes

if esprimo(m) then msgbox(m) Si es primo, se comunica
next i

End Sub

Con este otro código, dando valores a n entre 1 y 9, me resultaron dos soluciones: 43 y 76543.

Espero no haberme equivocado. Lo que me interesaba era dar a conocer la simplicidad que puede tener un algoritmo que después resulta bastante potente.

jueves, 26 de marzo de 2009

Primos reversibles (Primo-Omirp)


Es muy popular la definición de los pares de números
primo-omirp, o primos reversibles, que son aquellos en los que uno se forma invirtiendo las cifras del otro y que ambos son primos, como los pares 199 y 991, 7589 y 9857. Se suelen excluir los capicúas.

No vamos a insistir en el concepto, que incluso se recoge en la Wikipedia, sino en la posibilidad de encontrarlos con Hoja de Cálculo.

Para ello necesitamos las dos funciones que definimos en una entrada anterior: INVERTIR_CIFRAS y ESCAPICUA. Además, deberemos contar con la función ESPRIMO, uno de cuyos posibles códigos incluimos al final de la entrada.

Si te animas, encontrarás (excluyendo capicúas) 4 parejas de dos cifras (13 – 31, 17 – 71, 37 – 73, 79 – 97), 14 parejas de tres cifras, desde 107-701 hasta 991-199, y 102 de cuatro cifras. Puedes ordenar bien los cálculos usando las mencionadas funciones (de ESCAPICUA puedes prescindir)



Código de la función ESPRIMO
'Devuelve un 1 si es primo y un 0 si es compuesto

Public function esprimo(a) as integer
dim ai as long
dim n as long

dim es
ai=abs(int(a)
if ai=1 then es=0
if ai=2 then es=1

if ai>2 then

n=2:es=1
while n<=sqr(ai) and es=1

if ai MOD n=0 then es=0
n=n+1

wend

endif

esprimo=es

end function

viernes, 20 de marzo de 2009

Aspectos binarios del problema de la entrada anterior

El contenido de la entrada anterior se podría haber visualizado usando el sistema binario de numeración. La idea fundamental es la siguiente: Si un número n se expresa en sistema binario como un conjunto de unos y ceros, multiplicarlo por 2 equivale a añadir un cero a su derecha, o, en términos muy gráficos, "empujarle" sus cifras hacia la izquierda.

Así, si 7=111(2 su doble 14=1110(2 y multiplicado por 4 28=11100(2

En el problema citado, todos los números impares menores o iguales a n son "empujados" hasta convertirse en los números pares existentes entre n+1 y 2n. Como además esa operación equivale a ir multiplicando por 2, ls números primitivos serán los MFI de los resultantes.

Puedes verlo en la siguiente tabla, que contiene los números del 1 al 22 con su correspondiente desarrollo binario (se han suprimido los ceros): Los impares menores o iguales a 11 (1,3,5,7,9 y 11) son desplazados según las celdas de color naranja (que representan potencias de 2), hasta situarlos en las celdas de color verde, lo que los hace iguales a los números situados a su izquierda. Es mejor verlo que seguir la explicación.


1



1
2


1
3


1 1
4

1

5

1
1
6

1 1
7

1 1 1
8
1


9
1

1
10
1
1
11
1
1 1
12
1 1
3
13
1 1
1
14
1 1 1 7
15
1 1 1 1
16 1


1
17 1


1
18 1

1 9
19 1

1 1
20 1
1
5
21 1
1
1
22 1
1 1 11

Estudiando el problema de esta forma quedan claras algunas propiedades que de otra forma pueden pasar desapercibidas:

(a) Entre n+1 y 2n siempre hay una potencia de 2 ¿Por qué?

(b) (Esta ya se comentó en la entrada anterior) Entre n+1 y 2n, dado un impar k menor o igual que n, existe siempre un número y sólo uno de la forma k*2h

Intenta verlas de forma binaria.

lunes, 16 de marzo de 2009

La hoja de cálculo ayuda a razonar

Recientemente, en el blog Problemas matemáticos , se ha publicado este elegante problema:

Dado un número cualquiera, llamamos MFI de ese número a su mayor divisor impar. Así, el MFI de 12 es 3, y el MFI de 15, es 15. Por cierto, que hay números, como el 8, que tienen por MFI a 1.
Demuestra que la suma de los MFI de los números n + 1, n + 2, ..., 2n de cualquier entero positivo n siempre da n2.
Puedes comprobarlo con cualquier número, si no te lo crees.
¿Podrás convencer a todo el mundo de que sucede de verdad para todos los números?

Como por mi edad tengo las neuronas bastante trabajadas :-), me quise ayudar de la hoja de cálculo para resolverlo.

La solución dada n2 me dio la pista de que aparecerían todos los números impares desde 1 hasta n. Para comprobarlo creé para OpenOffice.org Calc la siguiente función para determinar el MFI de cualquier número:

public function mayordivimp(a1) as long
dim a,n, max as long

a=int(abs(a1))
if a=0 then max=0
if a=1 then max=1
if a>1 then
max=1
for n=1 to a step 2
if a/n = int(a/n) then max=n
next n
end if
mayordivimp=max
end function

Con ella creé tablas de dos columnas entre n y 2n para varios valores de n, escribiendo en la primera el número y en la segunda su mayor divisor impar

14 7
15 15
16 1
17 17
18 9
19 19
20 5
21 21
22 11
23 23
24 3
25 25
26 13

Teniendo a la vista este tipo de tablas se observa que en ellas figuran todos los impares desde 1 hasta 2n+1, luego mi sospecha estaba justificada. ¿Por qué ocurre esto?

La causa es que todo número n se puede expresar como n=MFI.2p, y esto produce dos hechos: Todos los impares menores que n figurarán con seguridad en la lista de MFI entre n+1 y 2n y además una sola vez.

(a) Que figuran una sola vez es fácil de ver, pues si h.2p figura en la lista desde n+1 hasta 2n, su siguiente número del mismo tipo sería el doble n=MFI.2p+1, y sería mayor que 2n.

(b) Que deban figurar todos se deduce de que para cualquier número menor que n, al multiplicarlo por 2, 4, 8, etc., siempre será posible que el múltiplo formado esté en el intervalo pedido n+1 a 2n. Omito los detalles.

Este ejemplo ilustra la dificultad que a veces se tiene de "ver" los componentes de un problema. Al comprobar con la hoja de cálculo que la lista contenía todos los números impares deseados, fue mucho más simple investigar la causa.

(Continuará)

miércoles, 11 de marzo de 2009

Proporciones relativas

“Recientes estudios estadísticos han puesto de manifiesto que de cada veinte maltratadores condenados, sólo uno sobrepasaba los dos metros de estatura. Aconsejen, por tanto, a sus amigas y conocidas que se emparejen con hombres altos, que vivirán más tranquilas”

¿Qué te parece esta conclusión? Descabellada, ¿no? Pues en nuestra vida diaria a veces razonamos de forma similar. El otro día oí en la televisión este comentario: “De cada 50.000 accidentes de tráfico, sólo en 400 estuvieron involucrados autocares, lo que demuestra que son más seguros que los turismos” Estoy totalmente de acuerdo con la última afirmación, pero no con el modo de obtenerla. Deberían darnos el dato del número de turismos y autocares que circulan por término medio en nuestras carreteras. De esa forma, dividiríamos el número de accidentados entre el número total de cada clase, y así obtendríamos la proporción de accidentes de cada uno, lo que nos permitiría evaluar qué porcentaje es mayor. En este caso, seguro que sería el de turismos, pero con los datos de la noticia eso no se deduce.

Otra afirmación sobre tráfico: “Las carreteras secundarias son más peligrosas que las autovías, porque en aquellas se producen muchos más accidentes de tráfico”. ¿No habría que dividir entre el número de kilómetros existentes en España de cada clase de vía? Y si alguien nos dijera que los camiones son más peligrosos de noche, porque a esas horas están más involucrados en accidentes que los turismos, ¿no necesitaríamos otros datos? ¿no hay tramos en los que de noche prácticamente sólo circulan camiones?

Cuando no vivía en Madrid, los amigos y familiares que viajaban a la capital nos traían de regalo un décimo de lotería, porque “en Madrid toca más”. El mismo fenómeno se da cuando se compra la lotería en Sort, fiados en una mayor probabilidad de obtener premio, ya que en esa localidad se dan muchos. A pocas personas se les ocurre comparar los premios con los números vendidos en esas ciudades.

El error básico que cometemos en estos razonamientos es el de usar cantidades absolutas, y no proporciones relativas o porcentajes. Para comparar la incidencia de un fenómeno cualquiera deberíamos plantearnos una tabla de doble entrada, rellenarla con las cantidades absolutas y después proceder a convertirlas en porcentajes.

Veamos esta, que podemos imaginar perteneciente a una empresa


Hombres Mujeres
Fuman 34 13
No fuman 46 14
Proporción 42,5% 48,2%

Si entráramos en la sala de fumar veríamos muchos más hombres que mujeres, y sin embargo sólo fuma el 42,5% de hombres frente a un 48,2% de mujeres.

Ya sabes, ten cuidado: si preguntas en tu parque a la gente que pasea si es diabética o no, no deduzcas de los resultados que a los diabéticos no les gusta tomar el sol.


miércoles, 4 de marzo de 2009

Cuadrado del simétrico o simétrico del cuadrado

Claudi Alsina, en su libro “Vitaminas matemáticas”, señala como una propiedad del número 12 la siguiente: 122 = 144 y 212 = 441, es decir, que el cuadrado de su número simétrico en cifras coincide con el simétrico de su cuadrado.

Esta propiedad la poseen otras parejas de números, en concreto hay, si la hoja de cálculo no falla, las siguientes:

Dos parejas de dos cifras: 12 y 21, 13 y 31
Cinco parejas de cuatro cifras, desde 102 con 201 hasta 311 y 113
Dieciocho de cinco cifras, desde 1002-2001 hasta 3111-1113
Cuarenta y una parejas de cinco cifras…

Una cuestión sencilla: ¿Qué cifras no pueden figurar entre las componentes de esos números? ¿Cuál es la causa?

Otra algo más compleja: De las cifras que pueden figurar, ¿qué combinaciones de ellas habría que desechar?

Y más difícil, porque hay que contar bastante: ¿Por qué aparecen estos números de parejas?: 2 de dos cifras, 5 de tres cifras, 18 de cuatro y 41 de cinco…

Si deseas emprender una búsqueda ordenada con hoja de cálculo, puedes usar las funciones invertir_cifras y escapicua que se explicaron en entradas anteriores.