Autor
|
Tema: [RETO] IsFibonacciNumber(N as long) as Boolean (Leído 14,890 veces)
|
79137913
Desconectado
Mensajes: 1.169
4 Esquinas
|
HOLA!!! Bueno, un reto facil, dada la funcion: IsFibonacciNumber(N as long) as Boolean Se le da un numero entero sea Positivo o Negativo la funcion devolvera True si efectivamente es un numero perteneciente a la serie y false si no pertenece. N maximo =46340Para informacion acerca de la Secuencia de Fibonacci: http://tinyurl.com/4ar5pd4Obviamente vamos a usar para testear: http://foro.elhacker.net/programacion_visual_basic/src_cfrogcontestcls_by_mr_frog_copy-t318871.0.htmlXD GRACIAS POR LEER!!!
|
|
« Última modificación: 15 Febrero 2011, 16:57 pm por 79137913 »
|
En línea
|
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!" "La peor de las ignorancias es no saber corregirlas"
79137913 *Shadow Scouts Team*
|
|
|
Elemental Code
Desconectado
Mensajes: 622
Im beyond the system
|
wiiiiii siempre me gusto fibbonacci che pero los numeros que nos vas a dar van de 1 a infinito? o hay algun tope? Ya le entro
EDITO: Esto puede ser muy lento, despues lo optimizo por ahora anda bien Public Function IsFibonacci(ByRef lNumber As Long) As Boolean Dim i As Long 'anterior Dim y As Long 'actual Dim x As Long 'Restultado a checkear i = 1 y = 1 Do While x < lNumber x = i + y i = y y = x If x = lNumber Then IsFibonacci = True: Exit Function Loop IsFibonacci = False End Function
|
|
« Última modificación: 14 Febrero 2011, 20:22 pm por Elemental Code »
|
En línea
|
I CODE FOR $$$ Programo por $$$ Hago tareas, trabajos para la facultad, lo que sea en VB6.0 Mis programas
|
|
|
Psyke1
Wiki
Desconectado
Mensajes: 1.089
|
Que malos sois justo mañana tengo examen y me poneis retos! No me podré resistir, asi que si no es hoy por mi noche o mañana posteo algo. Está interesante! DoEvents!
|
|
|
En línea
|
|
|
|
raul338
Desconectado
Mensajes: 2.633
La sonrisa es la mejor forma de afrontar las cosas
|
Che para mi deberia ser solo positivo, porque para ser negativo SIEMPRE hay que poner un limite para empezar. Sino no tenes cierta seguridad de si el numero pertenece a la serie o no. O sea, de 1 hacia adelante
|
|
|
En línea
|
|
|
|
DarkMatrix
Desconectado
Mensajes: 150
Nuestro Limite es la Imaginacion
|
Bueno aqui dejo mi Funcion xD Function isFibbonacciNum(ByVal lNumber As Long) As Boolean Dim Fn0 As Double Dim Fn1 As Double Dim i As Double Dim Num As Double Fn0 = 0 Fn1 = 1 isFibbonacciNum = False If lNumber = 0 Or lNumber = 1 Then isFibbonacciNum = True: Exit Function For i = 1 To lNumber Num = Fn0 + Fn1 Fn0 = Fn1 Fn1 = Num If Num = lNumber Then isFibbonacciNum = True: Exit Function If Num > lNumber Then Exit Function Next End Function
@Elemental CodeLa funcion da error con numeros grandes ( valor long maximo = 2.147.483.647 ) y devuelve falso para los numeros 0 y 1 cuando deberian ser true o.O
|
|
« Última modificación: 14 Febrero 2011, 20:55 pm por raul338 »
|
En línea
|
Todo aquello que no se puede hacer, es lo que no intentamos hacer. Projecto Ani-Dimension Digital Duel Masters (Juego de cartas masivo multijugador online hecho en Visual Basic 6.0) Desing by DarkMatrix
|
|
|
Psyke1
Wiki
Desconectado
Mensajes: 1.089
|
Aquí dejo la mía: Public Static Function IsFibonacciMrFrog(ByVal lngNumber As Long) As Boolean Dim dblRaised As Double Dim dblSum As Double Dim dblSqr As Double dblRaised = lngNumber * lngNumber dblSum = dblRaised + dblRaised + dblRaised + dblRaised + dblRaised + &H4 dblSqr = Sqr(dblSum) IsFibonacciMrFrog = (dblSqr - CLong(dblSqr) = &H0) If IsFibonacciMrFrog Then Exit Function dblSum = dblSum - &H8 dblSqr = Sqr(dblSum) IsFibonacciMrFrog = (dblSqr - CLong(dblSqr) = &H0) End Function
Private Sub Form_Load() Dim x As Long Dim s As String For x = 0 To 100 If IsFibonacciMrFrog(x) Then s = s & x & " " End If Next Debug.Print s End Sub
Resultado: 0 1 2 3 5 8 13 21 34 55 89 DoEvents!
|
|
« Última modificación: 15 Febrero 2011, 19:12 pm por Mr. Frog © »
|
En línea
|
|
|
|
Elemental Code
Desconectado
Mensajes: 622
Im beyond the system
|
para 1 la arreglo al toq. 0 no es de fibonacci :S fibonacci se arma asi El numero siguiente es la suma de los dos anteriores. juraria que el 0 no iba :S que era 1 1 2 3 5 8 13 21... lo se porque un amigo la usaba de password y era muy facil
|
|
|
En línea
|
I CODE FOR $$$ Programo por $$$ Hago tareas, trabajos para la facultad, lo que sea en VB6.0 Mis programas
|
|
|
DarkMatrix
Desconectado
Mensajes: 150
Nuestro Limite es la Imaginacion
|
Cito directo de wikipedia: En matemáticas, la sucesión de Fibonacci es la siguiente sucesión infinita de números naturales:
0,1,1,2,3,5,8,13,21,34,55,89,144
La sucesión inicia con 0 y 1, y a partir de ahí cada elemento es la suma de los dos anteriores. Link: http://es.wikipedia.org/wiki/Sucesi%C3%B3n_de_Fibonacci
|
|
« Última modificación: 15 Febrero 2011, 02:35 am por DarkMatrix »
|
En línea
|
Todo aquello que no se puede hacer, es lo que no intentamos hacer. Projecto Ani-Dimension Digital Duel Masters (Juego de cartas masivo multijugador online hecho en Visual Basic 6.0) Desing by DarkMatrix
|
|
|
79137913
Desconectado
Mensajes: 1.169
4 Esquinas
|
HOLA!!!
Igual si siguen buscando van a ver que la secuencia empieza en el -infinito si se quieren fijar.
GRACIAS POR LEER!!!
|
|
|
En línea
|
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!" "La peor de las ignorancias es no saber corregirlas"
79137913 *Shadow Scouts Team*
|
|
|
seba123neo
|
Hola, creo que la forma mas rapida de todas por lo que he visto de los muhcos algoritmos que hay, es meter todos los numeros ya calculados en un array y solo buscar en el.
saludos.
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Ayuda con la estructura de boolean
Programación Visual Basic
|
CRAB
|
3
|
3,413
|
12 Julio 2005, 20:32 pm
por Crack_X
|
|
|
Clase Boolean
Java
|
Franer
|
1
|
3,322
|
13 Febrero 2010, 18:06 pm
por panaka
|
|
|
Variable boolean en java, cuanto mide?
Java
|
nico56
|
5
|
8,480
|
20 Julio 2010, 08:07 am
por Aeros
|
|
|
[Reto Batch] IsFibonacciNumber (79137913)
« 1 2 »
Scripting
|
Eleкtro
|
14
|
8,206
|
22 Julio 2012, 03:00 am
por Binary_Death
|
|
|
PL/SQL función boolean
Bases de Datos
|
Psyke1
|
0
|
2,177
|
28 Junio 2012, 15:36 pm
por Psyke1
|
|