Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Calcular el factorial de un número

Estas en el tema de Calcular el factorial de un número en el foro de Visual Basic clásico en Foros del Web. Que tal? acá les dejo un código para calcular el factorial de un número, ya que he visto esta petición en varios foros... Function factorial(num ...
  #1 (permalink)  
Antiguo 11/01/2007, 07:19
 
Fecha de Ingreso: febrero-2003
Mensajes: 233
Antigüedad: 21 años, 2 meses
Puntos: 4
Calcular el factorial de un número

Que tal? acá les dejo un código para calcular el factorial de un número, ya que he visto esta petición en varios foros...

Function factorial(num As Integer)
If num = 0 Then
factorial = 1
Else
factorial = num * factorial(num - 1)
End If

End Function

-------------------------------------------

Private Sub btn_calcular_Click()
res = factorial(n)
End Sub



Suerte!
  #2 (permalink)  
Antiguo 11/01/2007, 16:18
Avatar de TolaWare
Colaborador
 
Fecha de Ingreso: julio-2005
Mensajes: 4.352
Antigüedad: 18 años, 10 meses
Puntos: 24
Re: Calcular el factorial de un número

Pues esa funcion es correcta, pero tiene una falla, cuando quieres calcular el factorial de 13, se produce un desbordamiento, para poder calcular factoriales mas grandes, tenes que usar el tipo currency,
  #3 (permalink)  
Antiguo 11/01/2007, 22:01
 
Fecha de Ingreso: febrero-2003
Mensajes: 233
Antigüedad: 21 años, 2 meses
Puntos: 4
Re: Calcular el factorial de un número

no, el funciona bien hasta el 170!
  #4 (permalink)  
Antiguo 12/01/2007, 15:26
Avatar de TolaWare
Colaborador
 
Fecha de Ingreso: julio-2005
Mensajes: 4.352
Antigüedad: 18 años, 10 meses
Puntos: 24
Re: Calcular el factorial de un número

El factorial de 170 es:
7,2574156153079989673967282111278e+306

Digamos en terminos reales:
72574156153079989673967282111278000000000000000000
00000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000
0000000000000000000000000

Dime ¿que tipo de variable usaste para guardar ese numero sin que se produjese un desbordamiento?
  #5 (permalink)  
Antiguo 12/01/2007, 15:59
Avatar de Tecnogal  
Fecha de Ingreso: octubre-2006
Mensajes: 314
Antigüedad: 17 años, 6 meses
Puntos: 5
Re: Calcular el factorial de un número

ese es un scrip clasico..ami me lo enseñaron junto con la frase "para entender la recursividad, primero hay que entender la recursividad"
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:32.