[RETO] Funcion iFactorize() - Factorizacion de numeros enteros

Iniciado por Karcrack, 17 Julio 2010, 14:30 PM

0 Miembros y 2 Visitantes están viendo este tema.

BlackZeroX

.
Las colecciones jamas me han convencido las veo lentas ¬¬"  >:D mejor un Array vale  :xD  >:D

Dulces Lunas!¡.
The Dark Shadow is my passion.

Karcrack

#11
He actualizado mi codigo! ;) , no me ha dado tiempo a comprobar la velocidad, doy por hecho que es mas rapida porque no es recursiva :-\

Lo de las collections es el requisito basico para el reto...

seba123neo

#12
Karcrack y a TODOS me gustarian que pongan las caracteristicas de la maquina donde estan probando, procesador y RAM, como para ver en que condiciones se esta probando, yo pruebo el ejemplo de Karcrack compilado obviamente y me da 4 veces mas de tiempo del que pusiste, es una notebook Intel Core 2 Duo 2Ghz y 3 GB de ram, o sea es una "buena" maquina. lo de las Collections quedo claro, BlackZeroX hacelo con Collections, debe haber miles de ejemplos mas rapidos con arrays, pero tiene que devolver lo que se dijo en el primer post y hay que cumplir las reglas  :xD

La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson

Karcrack

Por decirlo de una forma suave y que se entienda, lo de los collections es porque me sale de los huevos >:D :laugh: :laugh: :laugh:

Pues en el portatil que lo probe tiene un Mobile Intel Pentium M LV, 1200 MHz (12 x 100) y 512MB de RAM... Una mierdecilla...

Angeldj27

Hay va la mia

Código (vb) [Seleccionar]

Public Function FactorizeS(ByVal S As Long) As Collection  
   Dim cTmp    As New Collection
   Dim I       As Long

  If S <= 0 Then GoTo Ret
  If S = 1 Then cTmp.Add 1: GoTo Ret

  For I = 2 To Sqr(S)
       If S Mod I = 0 Then
          cTmp.Add I
      End If
      I = I + 2
  Next I
 
Ret: Set FactorizeS = cTmp
End Function


Claro casimente es una mejora a las otras funciones pero es mas rapida  ;D


"Que vamos a hacer Mañana?..... Lo mismo que hacemos todos los dias Pinky tratar de Conquistar el Mundoooo!!!!!

FFernandez

Hola Angeldj27



                          Prueba factorizar el nº 49.



                                                Un saludo