You are on page 1of 2

'2 a la 5

'2 base
'5 exponente
' p= 2*2*2*2*2
'
'p = 1
'p = p * base
'p = p * base
'p = p * base
'p = p * base
'p = p * base
Rem la funcion de nombre fpotencia calcula cualquier potencia de base real y
exponente entero
Rem recibe como parametros la base y el exponente
Rem retorna la base elevada al exponente
Rem tiene problemas con la indeterminacion cero a la cero
Function fpotencia(ByVal base As Double, ByVal exponente As Long) As Double
Dim p, rta As Double
Dim i, n As Long
If (exponente < 0) Then
n = -1 * exponente
Else
n = exponente
End If

i = 1
p = 1
While (i <= n)
p = p * base
i = i + 1
Wend

If (exponente < 0) Then


rta = 1 / p
Else
rta = p
End If

fpotencia = rta
End Function

'
'0! =1
'1! =1
'2! =1x2 =2
'3! =1x2x3 =6
'4! =1x2x3x4 =24
'5! =1x2x3x4x5 =120
Rem la funcion de nombre ffactorial calcula un factorial de un entero n positivo
Rem el factorial de un numero entero se obtiene multiplicando los enteros desde 1
hasta n
Rem recibe como parametro el numero entero positivo n
Rem retorna el factorial de ese numero
Function ffactorial(ByVal n As Long) As Long
Dim f, i As Long
f = 1
i = 1
While (i <= n)
f = f * i
i = i + 1
Wend
ffactorial = f
End Function

Function Horas(ByVal x As Double) As Boolean


Dim u, p, m, o, j, h, s, r, t, i As Long
Dim f As Boolean
u = x Mod 10000
p = u
j = p / 100
m = j
o = x / 10000
h = o
r = x Mod 100
s = r
t = (h * 10000)
i = t
If (t < 240000) And ((m >= 0) And (m <= 59) And (m >= 0)) And ((h < 24) And (h >
1)) And ((s > 1) And (s <= 99) And (s >= 0)) Then
f = True
Else
If (t >= 250000) And (m < 0) And (h < 0) And (s < 0) And (m > 59) And (m <> 60) And
(h > 25) Then
f = False
End If
End If
Horas = f
End Function

You might also like