FUNCIONES

FUNCIÓN CASE

INSTRUCCIÓN SELECT CASE

También existen ocasiones o programas donde se exige evaluar muchas condiciones a la vez, en estos casos, o se usan una condición compuesta muy grande o se debe intentar convertir el problema a uno que se pueda resolver usando la instrucción SELECT CASE.

Esta instrucción, es una instrucción de decisión múltiple, donde el compilador prueba o busca el valor contenido en una variable contra una lista de constantes, cuando el computador encuentra el valor de igualdad entre variable y constante, entonces ejecuta el grupo de instrucciones asociados a dicha constante, si no encuentra el valor de igualdad entre variable y constante, entonces ejecuta un grupo de instrucciones asociados a un default, aunque este ultimo es opcional.

El formato de esta instrucción es el siguiente;

capturar o asignar variable de condición;

Select Case variableopcion

case const1 instrucción(es)

case const2 instrucción(es)

case const3 Instrucción(es)

Case Else instrucción(es);

End Select

EJEMPLO

Funciones incorporadas en Visual Basic 6.0

funcion MOD

Devuelve el residuo de dividir un número entre otro.

Ejemplo hallar el residuo de dividir 13 entre 5

solución 13 mod 5 = 3

función ABS

Devuelve el valor absoluto de un número

abs(8)=8

abs(-10)=10

función INT

devuelve el valor entero inferior de un número

Ejemplo:

Int(8.7) = 8 Int(− 8.7) = − 9

función FIX

Fix(8.7) = 8 Fix(− 8.7) = − 8

FUNCION SGN

La función Sgn (Math.Sign en las versiones más recientes) devuelve el signo de un número o de una

variable numérica tomando valor 1 para un número positivo, − 1 para un número negativo y cero

cuando el número es cero. Supongamos A = 7.44, B = − 23, C = 0.

Sgn(A) = 1 Sgn(43) = 1

Sgn(B) = − 1 Sgn(− 453.33) = − 1

Sgn(C) = 0 Sgn(0) = 0

funcion ROUND

redondea a una cierta cantidad de decimales dados.

sintaxis : round(número,#decimales)

ejemplo:

Private Sub Command1_Click()

Dim a As Double

a = Val(Text1)

c = Round(a, 2)

Text2 = c

End Sub

funcion log(x)

devuelve el logaritmo de un número en base 10

Private Sub Command1_Click()

Dim a As Double

a = Val(Text1)

c = Log(a)

Text2 = c

End Sub

función sqt(x)

Private Sub Command1_Click()

Dim a As Double

a = Val(Text1)

c = Sqr(a)

Text2 = c

End Sub

Funciones numéricas más comunes (Más ejemplos de uso)

1) Sintaxis: ABS(Variable)

Devuelve: Un valor del mismo tipo que el que se pasó como parámetros y que especifica el valor absoluto de Variable.

Comentario: El valor absoluto de un número es su magnitud sin signo. Por ejemplo, ABS(-1) y ABS(1) devuelven 1

Ejemplo

2 Label

1 CommandButton

Debe quedarte así:

Aquí esta el código (Darle doble clíck al CommandButton e introducir lo siguiente)

Private Sub Command1_Click()

Dim Valor As Double

Valor = InputBox("Ingrese su numero favorito")

Label2 = Abs(Valor)

End Sub

2) Sintaxis: ATN(Variable)

Devuelve: Un tipo Double que especifica el arcotangente de Variable.

Comentario: Devuelve el ángulo correspondiente en radianes. (2)

Ejemplo

2 Label

1 CommandButton

Debe quedarte así:

Aquí esta el código (Darle doble clíck al CommandButton e introducir lo siguiente)

Private Sub Command1_Click()

Dim Valor As Double

Valor = InputBox("Arcotangente")

Label2 = Atn(Valor)

End Sub

3) Sintaxis: COS(Variable)

Devuelve: Un tipo Double que especifica el coseno del ángulo Variable.

Comentario: Variable indica un ángulo expresado en radianes (1)

Ejemplo

2 Label

1 CommandButton

Debe quedarte así:

Aquí esta el código (Darle doble clíck al CommandButton e introducir lo siguiente)

Private Sub Command1_Click()

Dim Valor As Double

Valor = InputBox("Coseno")

Label2 = Cos(Valor)

End Sub

4) Sintaxis: EXP(Variable)

Devuelve: Un tipo Double que especifica e (La base de los logaritmos decimales) elevado a la potencia Variable.

Comentario: Si el valor de Variable es mayor que 709.782712893, se produce un error. El valor de la constante e es 2,718282 aproximadamente.

Ejemplo

2 Label

1 CommandButton

Debe quedarte así:

Aquí esta el código (Darle doble clíck al CommandButton e introducir lo siguiente)

Private Sub Command1_Click()

Dim Valor As Double

Valor = InputBox("Exponencial")

Label2 = Exp(Valor)

End Sub

5) Sintaxis: FIX(Variable) y INT(Variable)

Devuelve: La parte entera de Variable.

Comentario: La diferencia entre INT y FIX es que si el número es negativo, INT devuelve el primer entero negativo menor o igual a número, mientras que FIX devuelve el primer entero negativo mayor o igual a número. Por ejemplo, INT convierte -8.4 en -9 y FIX convierte -8.4 a -8.

Ejemplo

4 Label

1 CommandButton

Debe quedarte así:

Aquí esta el código (Darle doble clíck al CommandButton e introducir lo siguiente)

Private Sub Command1_Click()

Dim Valor As Double

Valor = InputBox("Ingrese su número")

Label2 = Fix(Valor)

Label4 = Int(Valor)

End Sub

NOTA: Prueba con el valor -8.4 y después puedes probar con cualquier valor que te convenga.

6) Sintaxis: LOG(Variable)

Devuelve: Un tipo Double que especifica el logaritmo natural de Variable.

Comentario: Para calcular logaritmos en base N para cualquier número X se divide el logaritmo natural de X por el logaritmo natural de N de la siguiente manera:

LOG_N_DE_X = LOG(X) / LOG(N)

Ejemplo

6 Label

1 CommandButton

Debe quedarte así:

Aquí esta el código (Darle doble clíck al CommandButton e introducir lo siguiente)

Private Sub Command1_Click()

Dim LOG_N_DE_X As Double

Dim N As Double

Dim X As Double

N = InputBox("Ingrese N 'Cualquier numero'")

X = InputBox("Ingrese X 'Cualquier numero'")

Label2 = Log(X)

Label4 = Log(N)

LOG_N_DE_X = Log(X) / Log(N)

Label6 = LOG_N_DE_X

End Sub

7) Sintaxis: ROUND(Redondeado, [Decimal])

Devuelve: Números redondeado en lugares decimales.

Comentario: El argumento "Decimal" es opcional. Es un número que indica cuantos lugares a la derecha del decimal se incluyen en el redondeo. Si se omite, la función ROUND devuelve sólo enteros.

Ejemplo

2 Label

1 CommandButton

Debe quedarte así:

Aquí esta el código (Darle doble clíck al CommandButton e introducir lo siguiente)

Private Sub Command1_Click()

Dim Redondeo As Double

Redondeo = InputBox("Ingrese su numero")

Label2 = Round(Redondeo)

End Sub

__________________________________________________________________________

Bueno, las demás funciones ya las entenderás, porque son similares a las anteriores, así que no habrá ejemplos.

8) Sintaxis: SGN(Variable)

Devuelve: 1 Si Variable es mayor que cero

0 Si Variable es cero

-1 Si Variable es menor que cero

Comentario: El signo del argumento Variable determina el valor devuelto por la función SGN.

9) Sintaxis: SIN(Variable)

Devuelve: Un tipo Double que especifica el seno del ángulo Variable.

Comentario: Variable indica un ángulo expresado en radianes (1)

10) Sintaxis: SQR(Variable)

Devuelve: Un tipo Double que especifica la raíz cuadrada de Variable.

Comentario: El argumento es un tipo Double o cualquier expresión numérica válida mayor o igual a cero.

11) Sintaxis: TAN(Variable)

Devuelve: Un tipo Double que especifica la tangente del ángulo Variable.

Comentario: Variable indica un ángulo expresado en radianes (1)

(1) Para convertir grados en radianes, multiplique los grados por PI / 180

(2) Para convertir radianes en grados, multiplique los radianes por 180 / PI

Función Len

La función Len nos permite conocer la cantidad de caracteres que tiene una determinada cadena. O sea que esta función nos devuelve un número.

Ejemplo:

Len (Aquí va la cadena que queremos averiguar su tamaño)

Como la función Len devuelve un número debemos asignar ese número devuelto en una variable de tipo numérica.

Ejemplo:

Dim TamanoCadena As Long

Dim MiCadena As String

MiCadena = "Me Llamo Eustaquio"

TamanoCadena = Len(MiCadena)

El valor de la variable TamanoCadena pasaría a valer 18.

Hay que tener en cuenta que la función Len también toma en cuenta los espacios vacíos.

Función Asc y Chr

La función Asc nos permite obtener el código ASCII de un de terminado caracter.

Ejempos:

Si queremos obtener el código ASCII del caracter "a", que es el número 97 podríamos hacer lo siguiente:

Dim num As Integer

num = Asc("a")

En definitiva la función Asc lleva un solo parámetro de tipo String del cual queremos obtener dicho número.

La Función Chr actúa a la inversa de la función Asc, esto quiere decir, que a partir de un determinado número nos devolverá el caracter ASCII.

Obviamente que en vez de pasarle a la función un parámetro String es decir la letra, debemos pasarle un número ASCII y nos devolverá el carácter asociado.

Ejemplo:

Dim letra As String

letra = Chr(97)

La variable pasa a valer en este caso el caracter "a"

Función Str y Val

La función Val convierte una cadena en un número yla función Str un número en una cadena.

Ejemplos:

cadena = "123456"

cadena = Val(cadena)

'Ahora cadena vale 123456

cadena2 = 123456

cadena2 = Str(cadena2)

'Ahora cadena2 vale "123456"

Función Round

La función Round se utiliza para redondear un número decimal, devolviendo un número entero.

Ejemplo:

Dim Mimumero As Long

Minumero = Round(245.8) '(La función devuelve 246)

Minumero = Round(245.3) '(La función devuelve 245)

Minumero = Round(245.5) '(La función devuelve 245)

Round posee un parámetro opcional por si queremos incluir los dígitos decimales

Funciones de formato

Visual Basic posee varias funciones para darle formato a distintos tipos de datos e información. A continuación se ve algunos ejemplos de las principales funciones:

FormatCurrency: Esta función se utiliza para trabajar con números con formato en dinero. Ejemplo:

si tenemos un número 3 y utilizamos la función nos devolvería "$3".

FormatPercent: Esta función es utilizada para trabajar con porcentajes. Ejemplo :

si tendríamos un número 321, nos devolvería: "32,1%" .

FormatDateTime: Esta función trabaja con fechas y horas.

FormatNumber: Formatea expresiones números

Resultado = FormatPercent(321) 'devuelve: "32.100,00%"

Resultado = FormatCurrency(3) 'devuelve: "$3,00"

Resultado = FormatDateTime("6-8-1978") 'La función devolvería: "06/08/1978"