Professional Documents
Culture Documents
Funciones en VB
12.1. Objetivos del tema.
Vamos a ver en este tema las funciones en el lenguaje Visual Basic 2005.
12.2. Introduccin.
La programacin est basada en las estructuras.
Estructuras de datos y estructuras de programas.
Los programas son a su vez contenedores de estructuras de elementos individuales
que ejecutan cdigo.
El elemento ms pequeo es la instruccin.
Despus nos encontramos con procedimientos y funciones.
El siguiente nivel es la clase y por ltimo el programa.
En VB, las funciones son funciones y podrn o no pertenecer a una clase y ser un
mtodo, se albergar en el interior de una clase, haciendo referencia al mismo
mediante el nombre de la clase y a continuacin el de la funcin, mtodo, o si est
en el mismo nivel, con utilizar la funcin es suficiente, como vemos en el ejemplo.
Pero no toda la resolucin de una clase se realiza mediante cdigo que se pueda o
se tenga que traducir en un mtodo.
La programacin adems se basa en la divisin de un problema grande, en varios
pequeos, aquello de divide y vencers, por lo que por esa misma filosofa es
imposible, e ilgico, que todo se convierta en mtodos.
Los mtodos son la parte lgica visible de una clase, lgica en cuanto a que es
aquello que cara al usuario le ayuda a resolver un problema en pasos
comprensibles para l.
Con las funciones sucede lo mismo, al fin y al cabo, no son nada ms que otra de
las herramientas de programacin.
InvierteCadena = Result
End Function
Cadena = InvierteCadena(Cadena)
12.3. Escribir la funcin.
Vemos el ejemplo de una funcin.
Como hemos comentado antes, primero se indica el mbito de la funcin, pblico o
privada, despus la palabra que ndica que es una funcin, no un procedimiento.
InvierteCadena = Result
End Function
InvierteCadena = Result
FuncionFactorial = n * FuncionFactorial(n - 1)
Por valor
Por referencia
Por referencia, sin embargo la variable recibida podr ser utilizada y si ha sufrido
cambio en su valor, ste podr ser devuelto al programa que lo ha llamado, el
procedimiento recibe una referencia a la variable, por lo tanto los cambios que se
realicen a la misma, perduran a la finalizacin del procedimiento, o funcin.
En VB se puede recibir datos por valor, ByVal, y por referencia, ByRef, tanto en un
procedimiento, SUB, o una funcin, Function.
Dicho de otra forma, podramos enviar datos por referencia a una funcin y recibir
datos devueltos en el nombre de la funcin y en la variable que nosotros
consideremos adecuado.
Un ejemplo:
, ByRef R As String)
Que podemos observar que es por referencia, ByRef, y despus para probar que se
puede utilizar:
R = Result
Sub Main()
Dim C As String = ARROZ
Dim R As String
Console.WriteLine("Valor por referencia en una funcin")
Console.WriteLine("Cadena invertida {0} es {1} ", C, InvierteCadena("ARROZ", R))
es el que sigue:
1.
Hallar el rea y la longitud de una circunferencia, solicitando el radio de la
misma R . Area = PI * R al cuadrado, Longitud = 2 * PI * R .
2.
3.
4.
Introducir una calificacin (entre cero y diez), e imprimir su equivalente
alfabtico, segn la siguiente tabla.
De 3
-------> M.D.
-------> SOB.
5.
Introducir un valor en metros y visualizar su valor en millas terrestres,
marinas , yardas y leguas.
Milla terrestre = 1.609,34 m.
Milla marina = 1.852,00 m.
Yarda = 4.190 m.
Legua = 0,9144 m.
6.
Introducir una fecha en pantalla con el formato da, mes y ao en tres
variables numricas, validar la fecha y emitir el mensaje de fecha incorrecta o
correcta.
7.
A partir de los siguientes valores de moneda extranjera, crear una funcin que
a partir de un importe en pesetas devuelva su equivalente en la moneda que se
indique.
1 Franco francs
25,2400
25,3920
0,0859
0,0864
1 Libra esterlina
245,5560
247,0340
1 Dlar americano
150,2280
151,1320
84,6480
85,1570
101,7550
102,3670
1 Lira
1 Marco alemn
1 Franco suizo
1 Florn holands
5,1170
75,5690
1 Escudo portugus
0,8262
0,8312