Está en la página 1de 16

Nombre del alumno: Luis Carlos Tijerina De La Rosa

Tema: 6.2 Actividad: Esquema

Fecha de entrega: 05- 06-2023

Bibliografía:

http://www.scribd.com/doc/75420482/UNIDAD

https://sites.google.com/site/algoritmosgonzalezsamaniego/unidad-6funciones

6.2 Funciones Estandar


También conocido como una subrutina o subprograma, como idea general, se presenta como
un Subalgoritmo que forma parte del algoritmo principal, el cual permite resolver una tarea
específica. Algunos lenguajes de programación, como Visual Basic .NET o Fortran, utilizan
el nombre función para referirse a subrutinas que devuelven un valor.

Una subrutina al ser llamada dentro de un programa hace que el código principal se detenga
y se dirija a ejecutar el código de la subrutina, en cambio cuando se llama a una macro, el
compilador toma el código de la macro y lo implanta donde fue llamado, aumentando así el
código fuente y por consiguiente el objeto.

Las funciones son casi exactamente iguales que los procedimientos con respecto a la forma
en que se los llama y se los crea o declara en el código, en cómo se le pasa los parámetros
etc...

1
La diferencia fundamental con respecto a los procedimientos o subrutinas es que estos,
luego de ejecutar el código que tengan en su interior, al final retornan un valor, y este valor
luego lo podemos utilizar para una determinada tarea. En cambio los procedimientos, solo
ejecutan el código que contienen y luego mueren por decirlo de alguna manera.

Para declarar o crear una función podríamos escribir lo siguiente:

Private Function Total (Valor1 As Integer, Valor2 As Integer) As Long

Total = Valor1 + Valor2

End Function

Seguramente notaste que declaramos la función llamada Total, y al final de los parámetros
dice As Long , esto es por que como dijimos las funciones retornan o devuelven un valor, o
sea que en este caso la función es de tipo Long, o mejor dicho devolverá un valor de tipo
Long., y luego ese valor devuelto lo podemos utilizar en otra parte del programa.

Las Funciones pueden retornar casi cualquier tipo de datos, como números, cadenas, fechas,
arreglos y vectores

Para llamar a la función anterior podríamos hacerlo de la siguiente manera:

Label1.caption = Total 502, 1478

En este caso el control Label1 llamaría a la función Total , la función realizaría la suma de
los valores pasados como parámetros y por último el valor final de la suma se lo asignaría
al control label1.

Funciones para el tratamiento de cadenas

Las funciones de cadena, como su nombre lo indica, se utilizan para trabajar y tratar las
cadenas de caracteres.

A continuación las más importantes de ellas.

Función Lcase y Ucase

2
Estas dos funciones se utilizan para convertir cadenas de texto a minúscula y mayúscula. La
función Lcase cambia o convierte una cadena de texto a minúscula y un ejemplo de como
utilizarla sería así:

Lcase (cadena que queremos convertir a minúsculas)

Ejemplo:

Dim cadena As String

cadena = "HOLA MUNDO"

'Convertimos cadena = LCase(cadena)

'La variable cadena ahora vale "hola mundo"

La función Ucase funciona de la misma manera que Lcase pero convierte el contenido de
una cadena a mayúsculas.

Por ejemplo, si tenemos un control Label1 que contiene un texto que dice: "Porcentaje de
sueldos", escribiendo la siguiente línea:

Label1 = Ucase (Label1)

El control Label1 pasaría a mostrar o mejor dicho contener en su propiedad


caption:"PORCENTAJE DE SUELDOS".

Función Trim, LTrim y RTrim

Estas tres funciones se utilizan para eliminar los espacios vacíos de una cadena.

LTrim elimina los espacios vacíos de la parte izquierda de la cadena, RTrim de la parte
derecha y Trim de ambas partes.

Ejemplos:

Tenemos una variable llamada ciudad con el valor " Barcelona". Para eliminar los espacios
vacíos de la izquierda haríamos lo siguiente:

3
ciudad = LTrim(ciudad)

Si en un TextBox quisieramos borrar todos los espacios vacíos de la parte derecha de la


cadena:

MiText = RTrim(MiText)

La Función Trim elimina todos los espacios vacíos de ambos lados de la cadena. Ejemplo:

Pais = " Argentina "


País = Trim(Pais)

Ahora el valor de País es igual a: "Argentina".

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.

4
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 InsTr

La función InStr se utiliza para buscar una cadena o parte de una cadena dentro de otra
cadena.

Si la función encuentra la cadena a buscar devuelve un número que representa la posición


donde encontró la cadena, si no la encuentra devuelve un 0.
5
Los parámetros que lleva esta función son:

InStr (comienzo, Cadena donde buscar, La Cadena a buscar)

Como esta función devuelve un número debemos almacenarla en una variable de tipo
numérica para utilizarla. Ejemplo:

Dim posicion As Integer

posicion = InStr("Estoy tomando mate", "mate")

En este ejemplo la función encontró la cadena "mate" en la posición 15, o sea que la
variable posición pasa a valer 15.

Si observamos bien, la función en el primer parámetro, denominado comienzo, nos pide que
le digamos desde que posición comenzar a buscar. En nuestro ejemplo, este parámetro lo
obviamos, esto quiere decir que comenzará desde la posición 0 de la cadena a buscar. Pero
podríamos especificar una posición en particular, por ejemplo desde la 5 , 10 etc..., según lo
que necesitemos hacer.

Otro ejemplo de InsTr :

Este ejemplo, muestra como buscar dentro de un control TextBox, el cual tiene dos
opciones, un botón para buscar la primera frase, y otro que sigue buscando a partir de
donde esté ubicda la selección.

Para armar el ejemplo colocar un Textbox llamado Text_Buscar que es donde se ingresará
la frase y otro TextBox llamado Text1 que tendrá el texto. Este ultimo con la propiedad
Multiline en True. También colocar dos CommandButtonCommand1 y Command2

6
Colocar el siguiente código fuente en el formulario:

7
Option Explicit
Private m_Pos As Integer
Sub buscar_cadena(ByVal Posicion As Integer)
Dim p As Integer, Frase As String Frase
= txt_Buscar
p = InStr(Posicion, Text1, Frase)
If p > 0 Then
m_Pos = p
With Text1
.SelStart = m_Pos - 1
.SelLength = Len(Frase)
.SetFocus
End With
Else
MsgBox "No se encontró la frase", vbInformation
Text1.SetFocus
End If
End Sub
Private Sub Command1_Click()
'Busca a pratir de la primera pocición
Call buscar_cadena(1)
End Sub
Private Sub Command2_Click()
'Busca a partir del valor que tenga m_Pos
Call buscar_cadena(m_Pos + 1)
End Sub
Private Sub Form_Load()
Command1.Caption = "Buscar"
Command2.Caption = "Buscar siguiente"
Me.Caption = "Ejemplo de InStr "
End Sub

Nota: también hay una función similar a Instr llamada InstrRev , y lo que hace es devolver
la posición de la primera concurrencia de una cadena dentro de otra cadena, pero
comenzando por el extremo derecho de la misma.

Función Left, Right y Mid

Estas funciones son utilizadas para extraer partes de una cadena.

8
La función Left:

tiene 2 parámetros: El primero es la cadena de la cual se extraerán caracteres, y el segundo


un número desde el cual comenzar a extraer caracteres desde la parte izquierda.

Ejemplo:

Dim Cadena As String

Cadena = Left("Ya es la madrugada", 9)

'Cadena, que es un string, sería igual a: "Ya es la"

Función Right:

Es igual que la función Left pero comienza a extraer caracteres desde el lado derecho de la
cadena.

La función Mid:

Tiene la misma función que las anteriores pero posee tres parámetros. Su sintaxis es:

Mid (cadena, inicio, longitud)

El parámetro cadena es la cadena a extraer caracteres. El parámetro Inicio es donde


comenzar y el parámetro longitud, es la cantidad de caracteres a extraer de la cadena de
caracteres

Ejemplos:

Dim nombre As String


nombre = Mid("River perdió la copa", 7, 6)

'La variable nombre sería igual a: "perdió"

Este Otro ejemplo usa la función Mid para realizar un simple efecto tipo máquina de
escribir.

Colocar en un formulario un CommandButton y el siguiente código fuente en el form.

Option Explicit

9
' pausa o delay
Pausa Segundos
DoEvents
Loop
End Sub

Private Sub Form_Load()


Me.FontSize = 12
Me.Font.Bold = True
Me.ForeColor = vbRed
Command1.Caption = " Efecto de texto con mid "
End Sub

Private Sub Form_Unload(Cancel As Integer)


End
End Sub

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"

Funciones para el tratamiento de números

Visual Basic posee muchas funciones para tratar números. A continuación las principales
funciones.
10
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.

Rnd y Randomize - Números aleatorios

Para generar números aleatorios, Visual Basic incluye 2 funciones: Rnd y Randomize.

La función Rnd devuelve un número aleatorio, y esta posee un solo parámetro.

Ejemplo :

Rnd (número)

Pero para poder generar dichos números aleatorios, debemos utilizar previamente la
función Randomize con la siguiente fórmula:

Dim LimiteInferior As Integer


Dim LimiteSuperior As Integer
LimiteInferior = 20
LimiteSuperior = 40
MsgBox Int((LimiteInferior - LimiteSuperior + 1) * Rnd + LimiteInferior)

Funciones de formato
11
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"

NumDigitsAfterDecimal: Parámetro de tipo opcional. Este indicará cuantos números


decimales devolverá la función:

Ejemplo

cadena = FormatCurrency(325, 3) 'Devuelve: "$325,000"

Ejemplo de la función FormatDateTime

Esta función, en el primer parámetro se le debe pasar la fecha u hora a formatear, y el segundo
parámetro es el tipo de formato, pueden ser 5 tipos. vbGeneralDate, vbLongDate,
vbShortDate, vbLongTime y vbShortTime.

Este parámetro es de tipo opcional. al colocar la coma dentro de la función , visual basic
despliega la lista de constanetas mencionadas, como muestra el gráfico:

12
Un ejemplo para ver estos formatos utilizando FormatDateTime: Colocar cinco option
Button, cada botón de opción mostrará los diferentes formatos en el caption del formulario,
es decir en la barra de título.

Código en el formulario:

Private Sub Form_Load()

Option1.Caption = " vbGeneralDate "


Option2.Caption = " vbLongDate "
Option3.Caption = " vbShortDate "
Option4.Caption = " vbLongTime "
Option5.Caption = " vbShortTime "

End Sub
Private Sub Option1_Click()
Me.Caption = FormatDateTime(Now, vbGeneralDate)
13
End Sub

Private Sub Option2_Click()


Me.Caption = FormatDateTime(Now, vbLongDate)
End Sub

Private Sub Option3_Click()


Me.Caption = FormatDateTime(Now, vbShortDate)
End Sub

Private Sub Option4_Click()


Me.Caption = FormatDateTime(Now, vbLongTime)
End Sub

Private Sub Option5_Click()


Me.Caption = FormatDateTime(Now, vbShortTime)
End Sub

Función Format:

La función Format es mas completa que las anteriores funciones, porque puede manejar mas
tipos de datos, y no devuelve solo cadenas, esta también puede devolver números y fechas.

La función Format posee dos parámetros:

Format (Expresión, formato)

En el primero debemos colocar cualquier expresión válida. El segundo es opcional y a


continuación veremos una descripción de los formatos de VB:

• GeneralNumber: Devuelve el número sin formato.

14
• Currency: Devuelve el número en formato moneda, con el símbolo "$" y 2
decimales a las derecha.
• Fixed: Devuelve como mínimo un dígito a la izquierda y 2 ala derecha del
decimal.
• Standar: Similar a Fixed pero incluye un separador de miles.
• Percent: Multiplica el número por cien y le agrega el símbolo "%"
True/False: Devuelve Verdadero para un valor distinto de 0,y Falso para
0.
• On/OFF: Devuelve "Activado" para un valor distinto de 0, y
"Desactivado" para 0.

La forma de pasar el parámetro es entre comillas.

Ejemplo:

cadena = Format(75, "Currency") ' Devolvería: "$75,00"

Nota: Si ingresamos un número decimal, debemos utilizar el "." y no la coma "," ya que la
coma determina el comienzo de otro parámetro dentro de la función y Visual basic daría error
de sintaxis.

15
16

También podría gustarte