Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #19  
Antiguo 06-11-2007
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Hola Ñuño,
Es cierto que con emplear matrices se podría... aunque no estoy seguro... por la alta combinación de elementos (aunque esto no es tanto el problema) y también el hecho de como armaríamos la matriz.

el método de Karnaut... me suena, no se de donde... no recuerdo haberlo visto.

A mi este problema me ha dejado intranquilo. Intranquilo debido al hecho de que no se me ocurre que método emplear para conseguir evitar explorar las altas combinaciones posibles.

Mi idea:
1. Supuesto débil: todos los números son inferiores al resultado.
Tomar el resultado y buscar el valor más alto de entre la lista.
En base a la diferencia:
1. Si la diferencia es despreciablemente menor al número tomado de lista
1.1. La primera combinación a probar es la suma (es más probable que debido a cierta "proximidad" de los valores hallar un segundo número alto que de acuerdo a la suma se acerce al resultado)
2. SINO, es decir que la diferencia es apreciablemente mayor al número tomado de la lista:
2.1. La prima combinación a probar es la multiplicación
3. Elegir el segundo número según la proximidad
4. Actualizar el resultado siendo igual a la diferencia entre el resultado y la operación realizada: Resultado = Resultado - Operación(Numero1,Numero2)

La intención de esto es conseguir al menos el número más próximo al resultado.
El término despreciable y apreciable podría evaluarse según algunos indicadores estadísticos: varianza, media, mediana.

En pocas según la desviación que experimenten los números entre si y contra el resultado se vayan probando diversas operaciones. La regla sería así:
Cuanto mayor sea la varianza, la operación a probar es la multiplicación
Cuanto menor sea la varianza, la operación a probar es la suma

El problema de esto es que no se me hace sencillo codificarlo. Decirlo es sencillo pero cuando intento hacerlo en código es otra cosa. Si alguien me entiende y se anima a codificarlo lo animo a que continue. Tal vez funcione, tal vez no... pero al menos podríamos conseguir un número relativamente cercano. (algo que no se si con la técnica de matrices se pueda llegar a una solución).

En fin... es un punto de vista.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Algoritmo de Encriptacion DarkByte Varios 22 08-10-2014 19:54:41
Algoritmo!!! Ledian_Fdez C++ Builder 7 18-06-2007 22:17:50
Rechaza matematico ruso presea egostar Noticias 2 24-08-2006 12:19:11
Algoritmo MD5 tbolzan Varios 1 19-10-2004 15:13:47
Problema matemático __cadetill Humor 11 31-10-2003 12:20:57


La franja horaria es GMT +2. Ahora son las 11:50:44.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi