Matuk.com

Software para intercambio de regalos

  • Sharebar

En estas fechas navideñas, ¿quién no ha hecho intercambio de regalos con sus parientes y/o amigos? Esto se está volviendo una tradición porque es claro que regalarle a todos los parientes, a todos los conocidos, es algo que se ha vuelto prohibitivo. Primero, se le da algo de cierto valor mínimo (y máximo), y por otra parte, nos obviamos el dar regalos de relleno, los cuales quizás pasan al basurero o en el mejor de los casos al roper… para después sacar ese obsequio en una emergencia y quedar bien.

Hemos preparado una nueva emisión de Render, donde podrán conocer el programa de La_Morsa para hacer intercambios de regalos, y además, he elaborado un post para los que quieran conocer a detalle cómo funciona.

Pues con esto en mente y a petición de José Antonio Rodríguez, buen amigo y fiel lector de Matuk.com, nos dimos a la tarea de hacer un programa que -de una lista de nombres- sacara parejas de ellos de manera que se armara automáticamente la lista de intercambio de regalos, usando para ello la máquina que ya es una cotidianidad: la computadora.

El programa pide que se le alimente una lista de nombres y entonces hará los “pareos” entre personas. Una vez hecho esto, se puede guardar el resultado en un archivo de texto en disco, el cual se puede entonces re-enviar a todos las personas involucradas en el intercambio. Igualmente, se puede escribir la lista de nombres para que -si es necesario- puedan agregarse más adelante otros nombres. Cabe decir que si se agregan nuevos nombres, el pareo de quién le regalará a quién puede cambiar.

El programa muestra diferentes “pareos” entre los que le entran a un intercambio de regalos

 

Una opción que se le ha agregado es la de ordenar los nombres de las personas con las que se va organizar el intercambio de regalos, sin embargo, esto no influye en la manera en como el programa genera las parejas de intercambio.

El algoritmo que se usa es el siguiente:

  •  Se cuenta la cantidad de nombres que hay en la lista.
  •  Se saca un número al azar que vaya en el rango de 0 al número de personas en la lista
  •  Se guarda ese elemento en el pareo
  •  Se elimina ese valor de la lista
  •  Se cuenta la cantidad que ahora hay en la lista
  •  Se saca un número al azar que vaya en el rango de 0 al número de personas en la lista actualmente
  •  Se guarda ese elemento en el pareo
  •  Se manda al archivo de texto el pareo
  •  Se repiten los pasos 1 al 8 hasta que sólo queden dos nombres
  • Se parean estos nombres y se termina el proceso

Se pueden hacer tantos pareos como se quiera. El programa divide cada pareo con una línea punteada. Si el número de personas es impar, se agrega un valor que dice “<<no tiene pareja de intercambio>>“. Siempre se tiene que tener un número par de elementos para hacer los pareos.

Busca en este link la DESCARGA.

Comentarios y sugerencias a mi correo: morsa@la-morsa.com

Acerca de - Manuel López Michelone (La_Morsa). Físico por la UNAM y Maestro en Ciencias por la Universidad de Essex en el tema Inteligencia Artificial. Columnista por muchos años en publicaciones de la industria del cómputo y ávido programador. Síguelo en Twitter: @morsa.

Mostrando 11 Comentarios
¡Gracias por participar!

  1. kmaleon dice:

    Gran mrsa,l admiro..soy lector reguular pero comento poco,espero esto cambie,esta excelente el progrmama,peroctengovuna duda…q tan dificil seria q en lugar q empareje los nombres ,persona a pesona se “registre” en el programa y éste le dé el nombre a quien le daria el regalo,me explico…un gran saludo desde merida

  2. Rocko5 dice:

    ¿No seria mejor?…

    * Crear un array con los nombres en orden aleatorio. (array1)
    * Crear un array idéntico al anterior pero moviendo el último nombre al principio. (array2)
    * Hacer un ciclo de esta forma:

    for(int i = 0; i < array1.length; i++){
    array1[i] le da regalo a array2[i]
    }

    Así no se da el problema de personas impares.

  3. CarlosTrejo2308 dice:

    los papelitos ya pasaron de modaa xDD

  4. CarlosTrejo2308 dice:

    oigan, el link de descrga e llava a una pgina que no se que hacer.
    Coo lo piedo descargar?

  5. The Black Dragon dice:

    Por lo visto casi casi hay un software para cada necesidad :) la única mejorar sería es el no necesitar un número par de participantes, por ejemplo con 3 personas: a, b y c, a -> b, b -> c y c -> a, el chiste está en designar quién es a, b y c sin que sea por orden alfabético.

  6. CarlosTrejo2308 :

    oigan, el link de descrga e llava a una pgina que no se que hacer.
    Coo lo piedo descargar?

    Una opción es bajarlo de este link: http://www.mediafire.com/?5akq3ih2l26l3ab

  7. kmaleon :

    Gran mrsa,l admiro..soy lector reguular pero comento poco,espero esto cambie,esta excelente el progrmama,peroctengovuna duda…q tan dificil seria q en lugar q empareje los nombres ,persona a pesona se “registre” en el programa y éste le dé el nombre a quien le daria el regalo,me explico…un gran saludo desde merida

    La verdad no te entendí muy bien… Pero ya alguien me dio algunas sugerencias. Si tengo un rato, lo implemento.
    saludos

  8. ipak_ dice:

    morsa rules… es el unico que contesta, bueno el programa ya lo bajara , mi familia es de 60 y tantas personas por lo que es muy util …..NETA GRACIAS POR QUE A MI MAMA LE TOCO HACER LOS PAPELITOS .. una pregunta se puede imprimir la lista???

  9. ipak_ :

    morsa rules… es el unico que contesta, bueno el programa ya lo bajara , mi familia es de 60 y tantas personas por lo que es muy util …..NETA GRACIAS POR QUE A MI MAMA LE TOCO HACER LOS PAPELITOS .. una pregunta se puede imprimir la lista???

    Me olvidé lo de la impresión, pero puedes copiar el proceso resultante con ctrl-c y mandarlo, por ejemplo, al block de notas.

    saludos

  10. Jose Antonio Ponton dice:

    La liga de descarga ya esta arreglada… ! Gracias

Escribe tu comentario

Te recordamos que debes ingresar para escribir tu comentario.