TODOPIC

Misceláneas - Interés General => Off Topic => Mensaje iniciado por: Picuino en 23 de Abril de 2012, 18:16:01

Título: Acertijo
Publicado por: Picuino en 23 de Abril de 2012, 18:16:01
Tenemos 27 resistencias que parecen iguales, sin embargo una de ellas está quemada y tiene mayor resistencia.

Disponemos de un puente de medida que nos permite comparar resistencias dando un resultado muy sensible con un galvanómetro:

               (http://museo.fis.ucm.es/museo/bo/download/2395/thumb_37.jpg)

Demostrar que se puede localizar la resistencia quemada con sólo tres comparaciones.

Saludos.
Título: Re: Acertijo
Publicado por: Nocturno en 24 de Abril de 2012, 11:27:25
A ver si acierto:

1.- Dividimos las resistencias en tres series de 9. Una de ellas la desechamos. Las otras dos se colocan en serie con la alimentación y medimos en el punto medio. Si la medida es inferior a la mitad de Vdd, la resistencia buscada está en la serie superior; si fuera mayor a Vdd/2 estaría en la serie inferior. Si la medida es Vdd/2, la resistencia estará en la serie que descartamos.
2.- Nos quedamos con la serie de 9 resistencias que contiene a la quemada y la dividimos en tres series de 3 resistencias y procedemos igual que en 1. Nos quedará una serie de 3 con la seguridad de que la quemada está dentro.
3.- Procedemos igual que en 2, pero en esta ocasión descartando una resistencia y poniendo sólo 2 en serie. El mismo método empleado anteriormente nos indicará cuál es la quemada.

Saludos
Título: Re: Acertijo
Publicado por: Picuino en 24 de Abril de 2012, 14:43:35
 ((:-)) ((:-)) ((:-))
Deja un poco para los demás  :D

Saludos.
Título: Re: Acertijo
Publicado por: rivale en 24 de Abril de 2012, 15:02:27
 (((:-))) (((:-))) (((:-))) (((:-))).

muy buena la iniciatica picuino. :-)
Título: Re: Acertijo
Publicado por: Nocturno en 24 de Abril de 2012, 15:05:56
((:-)) ((:-)) ((:-))
Deja un poco para los demás  :D

Saludos.

Jajajaaaaa :D

¿Ese es el método que tenías en mente o hay otra forma de hacerlo?
Título: Re: Acertijo
Publicado por: migsantiago en 24 de Abril de 2012, 15:06:10
Buena la solución Manolo. Picuino, ¿había que usar puente de Wheatstone?
Título: Re: Acertijo
Publicado por: Picuino en 24 de Abril de 2012, 15:12:15
La solución es la que yo pensaba y es la única posible.
El puente de medida da 3 valores posibles:
   resistencia izquierda mayor
   resistencia derecha mayor
   resistencias iguales entre sí

De manera que en cada medición consigo 3 posibilidades.
Si hago 3 mediciones, entonces tengo en total 3*3*3 = 27 posibilidades.
Ahora sólo hay que conseguir repartir todos los casos posibles de manera que cada caso señale una resistencia.
Y Manolo ha acertado en el método para agrupar las resistencias en cada caso.

Saludos.
Título: Re: Acertijo
Publicado por: Nocturno en 24 de Abril de 2012, 15:14:15
La solución es la que yo pensaba y es la única posible.

Se me ha ocurrido otro método, que no es más que una variante de este: las resistencias se podrían agrupar en paralelo y también se encontraría la quemada
Título: Re: Acertijo
Publicado por: Picuino en 24 de Abril de 2012, 15:29:19
Ahora uno de estadística:
Dos amigos realizan varias pruebas de aplicación de placas Arduino y Pinguino a diferentes problemas prácticos. Se pretende conocer la efectividad de cada placa para solucionar los problemas de control a los que se suelen enfrentar.
Los amigos llegan al los siguientes resultados:

Efectividad de la placa                Resultados de PacoResultados de Juan
PinguinoArduino             PinguinoArduino
Placa idonea6 (40%)3 (33%)6 (67%)9  (60%)
Placa poco efectiva9 (60%)6 (67%)3  (33%)6  (40%)

Creo que me he liado, voy a elaborarlo un poco y lo publico.

Saludos.
Título: Re: Acertijo
Publicado por: Picuino en 24 de Abril de 2012, 15:37:32
La solución es la que yo pensaba y es la única posible.

Se me ha ocurrido otro método, que no es más que una variante de este: las resistencias se podrían agrupar en paralelo y también se encontraría la quemada

 :D

 ((:-))

A ver si te pillo con el siguiente.

Saludos.
Título: Re: Acertijo
Publicado por: Picuino en 24 de Abril de 2012, 15:43:39
Ahora uno de estadística:

Dos amigos realizan varias pruebas de aplicación de placas Arduino y Pinguino a diferentes problemas prácticos. Se pretende conocer la efectividad de cada placa para solucionar los problemas de control a los que se suelen enfrentar.
Los amigos llegan al los siguientes resultados:


Efectividad de la placa                Resultados de PacoResultados de Juan
PinguinoArduino             PinguinoArduino
Placa idonea6 (40%)3 (33%)6 (67%)9  (60%)
Placa poco efectiva9 (60%)6 (67%)3  (33%)6  (40%)

Según los resultados de Paco, la placa Pinguino es idonea en el 40% de los problemas probados frente a la placa Arduino que sólo ha sido idónea en el 33% de los casos probados.
Los resultados de Juan confirman los de Paco. En el 67% de los casos probados la placa Pinguino resultó una buena solución frente al 60% de los casos en los que la placa Arduino resultó efectiva.

Basándose en la experiencia de Paco y de Juan ¿qué placa deberíamos escoger para tener las mayores probabilidades de que sea idónea para desarrollar un nuevo proyecto?



Saludos.
Título: Re: Acertijo
Publicado por: rivale en 24 de Abril de 2012, 16:04:27
jeje, es pregunta capciosa?, no hay placa pinguino :mrgreen:, solo conozco la picuino, y me quedaria con esta en lugar de un arduino :-)
Título: Re: Acertijo
Publicado por: Picuino en 24 de Abril de 2012, 16:40:34
 :D gracias pero no es una pregunta capciosa.

El caso es que sí existe placa pinguino:

 http://www.hackinglab.org/pinguino/index_pinguino.html

(http://www.hackinglab.org/pinguino/image/pinguino4.jpg)

El hardware es demasiado simple para mi gusto, pero el software está bastante bien, es todo opensource multiplataforma y sirve para cualquier otra placa que lleve un 18F2550.

Saludos.
Título: Re: Acertijo
Publicado por: rivale en 24 de Abril de 2012, 17:07:24
bueno, entonces retiro mi respuesta anterior. creo que la pinguino es mas optima, y que les falta experiencia programando porque uno solo resolvio el 30% de los problemas y el otro el 60% :D
Título: Re: Acertijo
Publicado por: Picuino en 24 de Abril de 2012, 17:58:20
Eso parece con los datos que podemos ver. Pero si elaboramos un poco los datos nos sale otra respuesta sorprendente. ;-)

Saludos.
Título: Re: Acertijo
Publicado por: Nocturno en 25 de Abril de 2012, 01:42:43
Ambas placas tienen las mismas posibilidades. Si sumamos los datos de los dos individuos, cada placa tuvo los mismos resultados que la otra: 12 con éxito y 12 sin él.
Título: Re: Acertijo
Publicado por: Picuino en 25 de Abril de 2012, 09:09:49
Eso es Nocturno, acertaste.

Este acertijo es una paradoja estadística.
Los resultados de los dos amigos indican que la placa Pinguino es más idonea para resolver problemas.
Cuando sumamos los resultados de los dos nos sale que la placa Pinguino ha resuelto correctamente el problema el mismo porcentaje de veces que la placa Arduino:

Efectividad de la placa                Resultados de Paco yde Juan
PinguinoArduino            
Placa idonea12 (50%)12 (50%)
Placa poco efectiva12 (50%)12 (50%)

Es una demostración de cómo se pueden presentar los datos estadísticos para llevar a confusión.
No es que las estadísticas mientan, es que se suelen interpretar mal.


Saludos.
Título: Re: Acertijo
Publicado por: Picuino en 25 de Abril de 2012, 11:50:47
Código: [Seleccionar]
/***********************************************************************************************

                         N U E V O           A C E R T I J O

 ***********************************************************************************************/

Tres robots inteligentes se someten a una prueba para comprobar su inteligencia.

Se coloca a los robots en fila de forma que sólo pueden ver a los que tienen delante

Encima de la cabeza de cada robot se coloca una tarjeta al azar tomada de una bolsa que contiene tres tarjetas negras y dos tarjetas blancas. (corregido) dos tarjetas negras y tres tarjetas blancas.

Los robots pueden ver las tarjetas del robot que tienen delante pero no pueden ver la tarjeta que tienen ellos mismos sobre su cabeza.

Se le pregunta al último robot de la fila, que puede ver a los otros dos. ¿Qué tarjeta tienes sobre la cabeza? y contesta que no sabe.

Se le pregunta al segundo robot de la fila, que puede ver la cabeza del tercero. ¿Qué tarjeta tienes sobre la cabeza? y contesta que no sabe.

Al preguntar al tercer robot contesta correctamente que tiene una tarjeta negra sobre la cabeza.

¿Qué razonamiento se puede hacer para llegar a la misma conclusión que el tercer robot?

Saludos.
Título: Re: Acertijo
Publicado por: samshiel_pic en 25 de Abril de 2012, 12:09:38
Yo conozco este acertijo con pero con 5 personas y en vez de tarjetas con sobreros blanco y negros.
Y la verdad es que sé el resultado pero no lo diré de momento para dar más juego a este acertijo ;-).
Título: Re: Acertijo
Publicado por: samshiel_pic en 25 de Abril de 2012, 12:14:37
Además también se puede conocer el color de la tarjeta del robot de en medio!!  ;-) también lo conozco.
Título: Re: Acertijo
Publicado por: Picuino en 25 de Abril de 2012, 12:20:18
El acertijo está adaptado del acertijo de los sombreros. Con robots se adapta mejor al foro. :-)
Saludos.
Título: Re: Acertijo
Publicado por: Geo en 25 de Abril de 2012, 18:22:59
ya me confundí, yo pensé que el robot que indicó su tarjeta debía tener una blanca :p.
Título: Re: Acertijo
Publicado por: rivale en 25 de Abril de 2012, 20:46:12
El robot de hasta atras solo tenia 2 opciones para no saber que tarjeta tenia:
1.- que hubiera 2 blancas
2.- que hubiera una blanca y una negra

el robot de enmedio sabiendo que el de atras no sabia, solo tenia una opcion para no saber su tarjeta, que el de adelante tuviera una blanca, asi el podria tener la negra u otra blanca.

sabiendo esto el robot de hasta adelante deberia de tener una tarjeta blanca.

 :huh: :huh: :huh:

no se como para que tenga una negra
Título: Re: Acertijo
Publicado por: Picuino en 26 de Abril de 2012, 13:20:32
Tu razonamiento es correcto. He cambiado los datos, que estaban mal.
En realidad son tres tarjetas negras y dos blancas.
Perdón por la equivocación.

La solución se puede encontrar en esta dirección (entre otras) aplicada a sombreros: http://www.juegosdelogica.com/neuronas/solacert/solucion_acertijo_5.htm

¿Quién se anima a plantear otro?


Saludos.
Título: Re: Acertijo
Publicado por: Geo en 27 de Abril de 2012, 12:05:51
Jeje, entonces no estaba errado lo que había pensado :).
Título: Re: Acertijo
Publicado por: droky en 27 de Abril de 2012, 14:08:08
:D gracias pero no es una pregunta capciosa.

El caso es que sí existe placa pinguino:

 http://www.hackinglab.org/pinguino/index_pinguino.html

(http://www.hackinglab.org/pinguino/image/pinguino4.jpg)

El hardware es demasiado simple para mi gusto, pero el software está bastante bien, es todo opensource multiplataforma y sirve para cualquier otra placa que lleve un 18F2550.

Saludos.
Saliendome del tema del hilo y con mis disculpas por delante por la desviación, si que hay una placa Pinguino y muy potente en la que participa del desarrollo un amigo:
(http://www.olimex.com/dev/DUINO/PIC32-PINGUINO/PIC32-PINGUINO.jpg)

Disculpad la interrupción  ;-)
Salu2
Título: Re: Acertijo
Publicado por: Picuino en 27 de Abril de 2012, 14:48:28
Desde luego el hardware de esa placa no es simple, pero no parece tener resistencias limitadoras de corriente en las salidas ni pines de alimentación (Vcc y GND) en cada conector.

Yo me fabriqué mi placa porque echaba en falta esas cosas. El día que pinguino desarrolle una placa orientada a módulos y no orientada a shields, me uno al proyecto.

Este post te da una idea de lo que busco:
http://www.todopic.com.ar/foros/index.php?topic=36570.msg317875#msg317875

Y disculpad también por la nueva interrupción.

Un saludo.
Título: Re: Acertijo
Publicado por: rivale en 29 de Abril de 2012, 12:32:16
otro, otro  :-) :-)
Título: Re: Acertijo
Publicado por: Picuino en 29 de Abril de 2012, 12:37:33
¿Cuántos leds blancos se pueden encender conectados directamente a 4 pines de salida?
Los leds se deben poder encender y apagar de forma separada.

Saludos.
Título: Re: Acertijo
Publicado por: rivale en 29 de Abril de 2012, 12:41:28
Creo que 12, hago un diagrama y lo subo
Título: Re: Acertijo
Publicado por: Picuino en 29 de Abril de 2012, 12:44:57
Hay documentación de Microchip. Si la encuentras no hace falta hacer el diagrama.

Saludos.
Título: Re: Acertijo
Publicado por: rivale en 29 de Abril de 2012, 12:50:01
Ya la encontre, segun el Microchip "Tips 'n Tricks" se pueden conectar D diodos usando Gp pines de acuerdo a la ecuacion:

D=Gp* (Gp-1).

entonces con Gp=4 serian 4*3=12 leds.
Título: Re: Acertijo
Publicado por: Picuino en 29 de Abril de 2012, 12:53:28
 ((:-)) ((:-))

Tengo un problema realmente complicado, ¿Lo lanzo?

Saludos.
Título: Re: Acertijo
Publicado por: rivale en 29 de Abril de 2012, 12:54:22
Si, a ver.  :mrgreen:
Título: Re: Acertijo
Publicado por: Picuino en 29 de Abril de 2012, 13:04:24
Tengo una aplicación que necesita calcular la función seno y la función coseno para saber en que coordenadas X e Y se encuentra un manipulador que gira sobre su eje.
Un encoder me da información del giro del brazo y debo calcular las coordenadas.

Las funciónes seno y coseno no necesitan tener mucha precisión, bastará con 3 decimales (error absoluto del 0.1%) para localizar con exactitud la posición.
El microcontrolador debe calcular las funciones muy rápido, de manera que sólo se permiten cuatro multiplicaciones y dos sumas para calcular cada una de las funciones.

La memoria es limitada de manera que el programa en total con datos incluidos no puede sobrepasar 2Kbyte.


¿Cómo se podría realizar?

Saludos.
Título: Re: Acertijo
Publicado por: rivale en 29 de Abril de 2012, 13:07:57
Lo primero que se me ocurre es usar una tabla donde ya tengas guardados los valores tanto del seno o del coseno.

otra opcion creo que seria usar alguna serie para aproximarte a estas 2 funciones, pero no creo que con 2 multiplicaciones se obtenga una buena aproximacion.


sigo pensando... :idea:
Título: Re: Acertijo
Publicado por: Picuino en 29 de Abril de 2012, 14:13:11
¿Doy pistas?

Saludos
Título: Re: Acertijo
Publicado por: rivale en 29 de Abril de 2012, 14:21:24
y si usas coordenadas polares en lugar de cartesianas?
Título: Re: Acertijo
Publicado por: Picuino en 29 de Abril de 2012, 14:22:39
La tabla podría ser una opción, utilizando la interpolación.

Las series son un poco lentas. También sería otra opción a tener en cuenta. Así calculaba el primer Basic de Microsoft la función seno (y todo el Basic ocupaba menos de 4Kbytes!)

La solución más elegante es otra y es la que se suele utilizar en las calculadoras y compiladores en C

Saludos.
Título: Re: Acertijo
Publicado por: Picuino en 29 de Abril de 2012, 14:24:24
y si usas coordenadas polares en lugar de cartesianas?

Entonces no hay problema (podría ser una solución).

Pero el problema aquí es calcular la función seno con precisión, rápidamente y sin consumo de memoria.

Saludos.
Título: Re: Acertijo
Publicado por: Picuino en 29 de Abril de 2012, 15:14:10
El problema se podría resolver con una tabla de 16 posiciones entre 0 y 90 grados.

Como la tabla tiene 16 posiciones, sería fácil encontrar la posición de un elemento tomando los cuatro bits más significativos del ángulo (con un ángulo entre 0 y 4096 pulsos de encoder para toda la circunferencia)

Ángulo del encoder:
   0 pulsos = 0 grados
   1023 pulsos = 90 grados.



La interpolación se calcula así:

X=ángulo (pulsos)    Y=seno(ángulo)
0                             0.0000        
63                            0.0966
127                          0.1938
...

seno(x) = Y0 + (Y1-Y0) * (x - X0) / (X1-X0)

donde (X1-X0) siempre vale 64 y se puede sustituir por una multiplicación (más rápida):
1 / (X1 - X0) = 1 / 64 = 0.0156

seno(x) = Y0 + (Y1-Y0) * (x - X0) * 0.0156

Se resuelve todo con una búsqueda en tabla de datos (inmediata), tres sumas y dos multiplicaciones.



Otra simplificación a la interpolación:
La multiplicación y la suma  (Y1-Y0) * 0.0156 se podrían añadir a la tabla y con eso todavía se reducen más las operaciones:

X=Angulo (pulsos)    Y=seno        (Y1-Y0) * 0.0156
0                             0.0000         0,001509
63                            0.0966         0,001519
127                          0.1938         0,001489


seno(x) = Y0 + (x - X0) * [(Y1-Y0) * 0.0156]

seno(95) = 0.0966 + (95 - 63) * 0.001519 = 0.14521

Resultado real = seno(95*90/1023) = 0.14535
Error = 0.00014

Todo resuelto con una búsqueda, una multiplicación y dos sumas

Ahora que lo he calculado creo que esta sería la respuesta más eficiente. De todas formas hay otra respuesta válida que es la que realmente preguntaba.

Saludos.


Título: Re: Acertijo
Publicado por: rivale en 29 de Abril de 2012, 15:18:42
no seria mas facil tener los valores almacenados en una tabla, sin tener que hacer ninguna operacion solo leer el valor correspondiente al valor leido del encoder?.
con un switch (encoder)
case 0:
 sin=0
break;
case 1:
sin=#//regresar el valor correspondiente a ese grado
break:

y asi, aunque serian muchos cases
Título: Re: Acertijo
Publicado por: Picuino en 29 de Abril de 2012, 15:21:44
Entonces tendrías una tabla de 4096 posiciones con 2 bytes como mínimo en cada posición para poder tener precisión.
El resultado es 8192 posiciones para el seno y otras tantas para el coseno. Para muchos micros es prohibitivo.


Saludos.
Título: Re: Acertijo
Publicado por: Picuino en 29 de Abril de 2012, 17:02:37
Este es un problema más que un acertijo y además es bastante dificil.
Voy a dar la solución y buscamos otro acertijo:

Las funciones seno, coseno, logaritmo, etc se calculan en las calculadoras y en los lenguajes de alto nivel como C o basic, con polinomios.
En concreto se utilizan polinomios de Chebyshev que son los que tienen un error mínimo. Hay libros en los que aparecen los coeficientes para calcular cada función (por ejemplo las tablas matemáticas del Abramovich)
Para este caso, como se pide un error de 0.001 se pueden utilizar polinomios bastante simples con sólo 3 coeficientes:
 
COS(x/90) = 0.9994 - X^2 · (1.223 - X^2 · 0.2239)

Los grados se dan con un número entre 0 y 1 para representar de 0 a 90 grados.


Ejemplo:

cos(25º) = COS(25/90) = COS(0.27778) = 0.9994 - 0.27778^2 · (1.223 - 0.27778^2 · 0.2239) = 0.90636

en realidad cos(25º) = 0.90631 con lo que el error es 0.0005



Buscaré un acertijo para colgarle. Si otro forero tiene alguno y quiere postearlo, adelante.


Saludos.
Título: Re: Acertijo
Publicado por: rivale en 29 de Abril de 2012, 17:22:43
muy bueno, ya vi la definicion de los polinomios de Chebyshev,  no conocia esa aproximacion.  ;-)
Título: Re: Acertijo
Publicado por: Picuino en 29 de Abril de 2012, 20:09:09
************************************************************************************


************************************************************************************


En la primera guerra mundial el ejercito diseña un casco para proteger la cabeza de los soldados. Para demostrar su eficacia manda realizar un estudio estadístico de la efectividad de la protección.
La sorpresa llega cuando ese estudio demuestra que el porcentaje de heridos ha aumentado notablemente desde que se utiliza el casco protector.

¿Que está ocurriendo?

Saludos.

Título: Re: Acertijo
Publicado por: rivale en 29 de Abril de 2012, 22:00:20
se sienten mas seguros y creen que nada les va a pasar?
Título: Re: Acertijo
Publicado por: KALLITOS en 30 de Abril de 2012, 00:41:47
Los heridos aumentaron pero los muertos se redujeron, jejeje
Título: Re: Acertijo
Publicado por: Picuino en 30 de Abril de 2012, 05:40:29
 ((:-))
Eso es. Las heridas que antes mataban, gracias al casco, solo provocan heridos.
Ahora hay menos muertos.

Venga KALLITOS te toca.


Saludos.
Título: Re: Acertijo
Publicado por: KALLITOS en 30 de Abril de 2012, 11:28:19
Que número sigue..


2, 12, 17, 19,...
Título: Re: Acertijo
Publicado por: Picuino en 30 de Abril de 2012, 11:34:45
2 + 10 = 12
12 + 5 = 17
17 + 2 = 19
19 + 1 = 20

20?

Saludos
Título: Re: Acertijo
Publicado por: KALLITOS en 30 de Abril de 2012, 12:06:26
Demasiado frio, pista..no lo tomes matematicamente.

La respuesta es un numero de 4 cifras.
Título: Re: Acertijo
Publicado por: rivale en 30 de Abril de 2012, 19:54:22
Dos
Diez
Doce
Dieciseis
Diecisiete
Diesciocho
Diescinueve
Doscientos
Doscientosuno


asi?
Título: Re: Acertijo
Publicado por: KALLITOS en 30 de Abril de 2012, 21:30:26
eso, eso, dale rivale que te toca. en la pista me sobro una cifra  :mrgreen: kikosas no?

saludos
Título: Re: Acertijo
Publicado por: rivale en 30 de Abril de 2012, 21:36:02
 :-/ :-/ :-/jejeje, a ver este, tambien es una secuencia pero la logica es muy diferente:

Que numero sigue en la secuencia:

1,11,21,1211,3112,132112,......

Título: Re: Acertijo
Publicado por: xp8100 en 30 de Abril de 2012, 21:52:08
311322
232122
421311
14123113
.....
 
Título: Re: Acertijo
Publicado por: rivale en 30 de Abril de 2012, 21:53:20
Muy bien ((:-)), pero explica como es la secuencia para que se entienda
Título: Re:Acertijo
Publicado por: roberto gonzalez en 09 de Mayo de 2020, 14:37:39
:-/ :-/ :-/jejeje, a ver este, tambien es una secuencia pero la logica es muy diferente:

Que numero sigue en la secuencia:

1,11,21,1211,3112,132112,......



Puede que sea este??  312211 jejeje

Os dejo un acertijo matemático haber si lo podéis solucionar!!

"Hay 50 caramelos de chocolate en la caja. 30 de ellos vienen con relleno de caramelo, 25 con coco, 10 de ellos son dulces de dos sabores con caramelo y coco y el resto de ellos son dulces de chocolate sin relleno. ¿Que fotografía correspondería a la solución?"

(https://mejoresacertijos.com/wp-content/uploads/Acertijo-dif%C3%ADcil-de-caramelos.jpg)

Os dejo la solución donde lo encontré para que no la veáis sin querer jeje

https://mejoresacertijos.com/10-acertijos-matematicos-que-romperan-cabeza/ (https://mejoresacertijos.com/10-acertijos-matematicos-que-romperan-cabeza/)