SlideShare una empresa de Scribd logo
1 de 20
Descargar para leer sin conexión
FUNCIONES Y PROCEDIMIENTOS
Funciones
Son el código estructurado que realizan un proceso
y luego este, como resultado, retornan un solo y
único valor de algún tipo en particular
correspondiente al de una variable u objeto.
Creación:
<Acceso>Function NombreFunc(Arg1 As Tipo1,
Arg2 As Tip2, …) As TipoRetorno
‘ Declaración de Variables locales
‘ Proceso
Return ValorRetorno
End Function
• TipoRetorno
Es el tipo de dato o Clase que retornará la
función y es importante que coincida con el
ValorRetorno que se devuelva en la función.
• <Acceso>
Es si es Public, Private u otro acceso. Además
los argumentos pueden ser de cero a más
argumentos indicando que tipo de dato es
cada uno para delimitarlos en las llamadas a
la función.
Llamada a una función
Cuando se requiere llamar a la función o
método, debemos referirlo por su nombre con
sus respectivos argumentos entre paréntesis y
recibir el retorno en una variable o como
argumento para otro método.
Dim Variable AS TipoRetorno
Variable = NombreFunc(Arg1, Arg2, …)
MetodoOtro(NombreFunc(Arg1, Arg2, …)
Otra forma de devolver el valor único es:
<Acceso>Function NombreFunc(Arg1, As Tipo1,
Arg2 As Tip2, …) As TipoRetorno
‘ Declaración de Variables locales
‘ Proceso
NombreFunc=ValorRetorno
End Function
En los casos anteriores se asume que la función
(método) se esta invocando desde dentro de la
misma o en su defecto de un módulo.
Considerar:
• Cuando un método es llamado dentro de la
misma clase, no se requiere anteponerle el
nombre del objeto
• Cuando es llamado desde una instancia de
objeto, si requiere anteponerle el nombre del
objeto.
Ejemplo:
Class MiClase
Public Prop AS Integer
Public Function Func1(ByVal Arg1 As Single)
As Single
Dim R A Single
R = Arg1 * 2
Return R
End Function
End Class
Class OtraClase
Dim Obj As New MiClase
Dim Y, Z As Single
Y = Obj.Func1()
Z = Obj.Func1(Y)
End Class
Aplicación
Crear una aplicación empleando métodos con valores de retorno
Public Class Actividad2
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
Dim x, r As Single
x = InputBox("ingresar Número:")
r = raiz1(x)
MsgBox("La raíz cuadrada es " & r, , "Método 1")
r = Raiz2(x)
MsgBox("La raiz cuadrada es " & r, , "Método 2")
End Sub
Aplicación
Private Function Raiz1(ByVal x As Single) As Single
Dim rz As Single
rz = Math.Sqrt(x)
Raiz1 = rz
End Function
Private Function Raiz2(ByVal x As Single) As Single
Dim rz As Single
rz = Math.Sqrt(X)
Return rz
End Function
End Class
Procedimientos
Son el código estructurado que realizan un
proceso y no hay un retorno de valores luego
de este.
Creación:
<Acceso>Sub NombreProc(Arg1, As Tipo1,
Arg2 As Tip2, …)
‘ Declaración de Variables locales
‘ Proceso
End Sub
• <Acceso>
Es si es Public, Private u otro acceso. Además
los argumentos pueden ser de cero a más
argumentos indicando que tipo de dato es
cada uno para delimitarlos en las llamadas al
procedimiento.
Llamada a un Procedimiento
Cuando se requiere llamar a un procedimiento,
debemos referirlo por su nombre con sus
respectivos argumentos entre paréntesis.
NombreProc(Arg1, Arg2, …
Y si son referenciados desde un método de una
instancia de un objeto.
Obj.NombreProc(Arg1, Arg2, …)
Aplicación
Crear una aplicación empleando métodos sin valores de retorno
Public Class Actividad3
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
If Me.TextBox1.Text.Trim.Length > 0 Then
Letras(Me.TextBox1.Text)
Else
Letras("Escribe algo")
Me.TextBox1.Focus()
End If
Me.TextBox1.Clear()
End Sub
Aplicación
Private Sub Letras(ByVal T As String)
Dim Titulo As String
Titulo = Me.Text
Me.Text = "## " & T & " ##" & Me.ProductName
MsgBox(T, , "Mensaje")
Me.Text = Titulo
End Sub
End Class
PARÁMETROS POR VALOR
Y POR REFERENCIA
Parámetros por Valor (ByVal)
Public Class Form1
Private sub Button1_Click(ByVal sender As System.Object,
ByVal e AS System.EventArgs) Handles Button1_Click
Dim X As Integer ‘1
X=120 ‘2
Proc(X) ‘3
MsgBox(X) ‘6
End Sub
Private Sub Proc(ByVal A As Integer) ‘3
MsgBox(A) ‘4
A=200 ‘5
End Sub
End Class
Parámetros por Referencia (ByRef)
Public Class Form1
Private sub Button1_Click(ByVal sender As System.Object,
ByVal e AS System.EventArgs) Handles Button1_Click
Dim X As Integer ‘1
X=120 ‘2
Proc(X) ‘3
MsgBox(X) ‘6
End Sub
Private Sub Proc(ByRef A As Integer) ‘3
MsgBox(A) ‘4
A=200 ‘5
End Sub
End Class
Aplicación
Crear una aplicación empleando métodos por
Referencia
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles Button1.Click
Dim X As Integer
X = InputBox("Ingresar un Número")
Cuadrado(X)
MsgBox(X, , "El Cuadrado es:")
End Sub
Private Sub Cuadrado(ByRef N As Integer)
N = N ^ 2
End Sub
End Class
Crear una aplicación empleando parámetros
que permita, calcular la sumatoria de un
número ingresado.
Crear una aplicación empleando parámetros
que permita, calcular el factorial de un número
ingresado.
Práctica

Más contenido relacionado

La actualidad más candente

Metodos en java
Metodos en javaMetodos en java
Metodos en javaaleja0940
 
Funciones propias de visual basic
Funciones propias de visual basicFunciones propias de visual basic
Funciones propias de visual basicYesenia Bautista
 
Metodos,variables, pasodeparametros
Metodos,variables, pasodeparametrosMetodos,variables, pasodeparametros
Metodos,variables, pasodeparametroskenixxx
 
JavaScript funciones
JavaScript funcionesJavaScript funciones
JavaScript funcionesjcremiro
 
Programa ya comprobado que suma dos números binarios y da el resultado en dec...
Programa ya comprobado que suma dos números binarios y da el resultado en dec...Programa ya comprobado que suma dos números binarios y da el resultado en dec...
Programa ya comprobado que suma dos números binarios y da el resultado en dec...jbersosa
 
UTN tipo de dato short
UTN tipo de dato shortUTN tipo de dato short
UTN tipo de dato shortLuisChowy
 
Métodos en programacion
Métodos en  programacionMétodos en  programacion
Métodos en programacioncrisricguepi
 
Taller de programación clase #2
Taller de programación   clase #2Taller de programación   clase #2
Taller de programación clase #2Juan Cardona
 
Funciones
FuncionesFunciones
Funcionesadark
 
Unidad6 funciones
Unidad6 funcionesUnidad6 funciones
Unidad6 funcionesmoii Hp
 
3 desarollo manejo datos capitulo 1 -01 arreglos de dimension (6)
3 desarollo manejo datos capitulo 1 -01 arreglos de dimension (6)3 desarollo manejo datos capitulo 1 -01 arreglos de dimension (6)
3 desarollo manejo datos capitulo 1 -01 arreglos de dimension (6)luis freddy
 

La actualidad más candente (19)

Metodos en java
Metodos en javaMetodos en java
Metodos en java
 
Funciones propias de visual basic
Funciones propias de visual basicFunciones propias de visual basic
Funciones propias de visual basic
 
Separata java script
Separata java scriptSeparata java script
Separata java script
 
Metodos,variables, pasodeparametros
Metodos,variables, pasodeparametrosMetodos,variables, pasodeparametros
Metodos,variables, pasodeparametros
 
Visual basic
Visual basicVisual basic
Visual basic
 
JavaScript funciones
JavaScript funcionesJavaScript funciones
JavaScript funciones
 
Programa ya comprobado que suma dos números binarios y da el resultado en dec...
Programa ya comprobado que suma dos números binarios y da el resultado en dec...Programa ya comprobado que suma dos números binarios y da el resultado en dec...
Programa ya comprobado que suma dos números binarios y da el resultado en dec...
 
Encapsulamiento
EncapsulamientoEncapsulamiento
Encapsulamiento
 
UTN tipo de dato short
UTN tipo de dato shortUTN tipo de dato short
UTN tipo de dato short
 
Python
Python Python
Python
 
Métodos en programacion
Métodos en  programacionMétodos en  programacion
Métodos en programacion
 
Programa 19
Programa 19Programa 19
Programa 19
 
Taller de programación clase #2
Taller de programación   clase #2Taller de programación   clase #2
Taller de programación clase #2
 
Algoritmo por seleccion
Algoritmo por seleccionAlgoritmo por seleccion
Algoritmo por seleccion
 
Funciones
FuncionesFunciones
Funciones
 
Unidad6 funciones
Unidad6 funcionesUnidad6 funciones
Unidad6 funciones
 
Tipos de Datos Abstractos (TDA)
Tipos de Datos Abstractos (TDA)Tipos de Datos Abstractos (TDA)
Tipos de Datos Abstractos (TDA)
 
3 desarollo manejo datos capitulo 1 -01 arreglos de dimension (6)
3 desarollo manejo datos capitulo 1 -01 arreglos de dimension (6)3 desarollo manejo datos capitulo 1 -01 arreglos de dimension (6)
3 desarollo manejo datos capitulo 1 -01 arreglos de dimension (6)
 
Listas enlazadas
Listas enlazadasListas enlazadas
Listas enlazadas
 

Destacado

Missió i objectius generals i específics
Missió i objectius generals i específicsMissió i objectius generals i específics
Missió i objectius generals i específicsFelissa Jf
 
2014 calvijn-cijfers-arbeidsmarkt
2014 calvijn-cijfers-arbeidsmarkt2014 calvijn-cijfers-arbeidsmarkt
2014 calvijn-cijfers-arbeidsmarktChris Noordam
 
ReflexióN Sobre A Sociedade Da InformacióN.Sandra PeñA Ferreiro
ReflexióN Sobre A Sociedade Da InformacióN.Sandra PeñA FerreiroReflexióN Sobre A Sociedade Da InformacióN.Sandra PeñA Ferreiro
ReflexióN Sobre A Sociedade Da InformacióN.Sandra PeñA Ferreiroecursocig
 
Estimativas de Software – Fundamentos, Técnicas e Modelos... e o principal, i...
Estimativas de Software – Fundamentos, Técnicas e Modelos... e o principal, i...Estimativas de Software – Fundamentos, Técnicas e Modelos... e o principal, i...
Estimativas de Software – Fundamentos, Técnicas e Modelos... e o principal, i...Gustavo Simões, PMP / CFPS
 
ECONOMIA Y DESARROLLO- CLASE 14
ECONOMIA Y DESARROLLO- CLASE 14ECONOMIA Y DESARROLLO- CLASE 14
ECONOMIA Y DESARROLLO- CLASE 14wendy santivañez
 
Pc kursplan
Pc kursplanPc kursplan
Pc kursplanludvighe
 
소셜 커머스
소셜 커머스소셜 커머스
소셜 커머스ghckddnjs
 
Responsibility2
Responsibility2Responsibility2
Responsibility2mcveybass
 
기업의 학습 풍토를 평가하는 진단 문항
기업의 학습 풍토를 평가하는 진단 문항기업의 학습 풍토를 평가하는 진단 문항
기업의 학습 풍토를 평가하는 진단 문항Rufina Kim
 
A. Petrucci - Il corso-concorso per la dirigenza pubblica e la Scuola Superio...
A. Petrucci - Il corso-concorso per la dirigenza pubblica e la Scuola Superio...A. Petrucci - Il corso-concorso per la dirigenza pubblica e la Scuola Superio...
A. Petrucci - Il corso-concorso per la dirigenza pubblica e la Scuola Superio...Istituto nazionale di statistica
 
1. Strategia nel Social Media Marketing > Roberto Lacchini, Markeven
1. Strategia nel Social Media Marketing > Roberto Lacchini, Markeven1. Strategia nel Social Media Marketing > Roberto Lacchini, Markeven
1. Strategia nel Social Media Marketing > Roberto Lacchini, MarkevenMarkeven Srl
 
Escuela de Idiomas Uce Almeida
Escuela de Idiomas Uce AlmeidaEscuela de Idiomas Uce Almeida
Escuela de Idiomas Uce AlmeidaGeorge Almeida
 

Destacado (20)

Missió i objectius generals i específics
Missió i objectius generals i específicsMissió i objectius generals i específics
Missió i objectius generals i específics
 
2014 calvijn-cijfers-arbeidsmarkt
2014 calvijn-cijfers-arbeidsmarkt2014 calvijn-cijfers-arbeidsmarkt
2014 calvijn-cijfers-arbeidsmarkt
 
Infor
InforInfor
Infor
 
ReflexióN Sobre A Sociedade Da InformacióN.Sandra PeñA Ferreiro
ReflexióN Sobre A Sociedade Da InformacióN.Sandra PeñA FerreiroReflexióN Sobre A Sociedade Da InformacióN.Sandra PeñA Ferreiro
ReflexióN Sobre A Sociedade Da InformacióN.Sandra PeñA Ferreiro
 
Estimativas de Software – Fundamentos, Técnicas e Modelos... e o principal, i...
Estimativas de Software – Fundamentos, Técnicas e Modelos... e o principal, i...Estimativas de Software – Fundamentos, Técnicas e Modelos... e o principal, i...
Estimativas de Software – Fundamentos, Técnicas e Modelos... e o principal, i...
 
2010 Portfolio
2010 Portfolio2010 Portfolio
2010 Portfolio
 
Gd 1 Nccr
Gd 1 NccrGd 1 Nccr
Gd 1 Nccr
 
ECONOMIA Y DESARROLLO- CLASE 14
ECONOMIA Y DESARROLLO- CLASE 14ECONOMIA Y DESARROLLO- CLASE 14
ECONOMIA Y DESARROLLO- CLASE 14
 
Pc kursplan
Pc kursplanPc kursplan
Pc kursplan
 
소셜 커머스
소셜 커머스소셜 커머스
소셜 커머스
 
Responsibility2
Responsibility2Responsibility2
Responsibility2
 
Tarea
TareaTarea
Tarea
 
Jizquierdo1 larc biotecnologia
Jizquierdo1 larc biotecnologiaJizquierdo1 larc biotecnologia
Jizquierdo1 larc biotecnologia
 
기업의 학습 풍토를 평가하는 진단 문항
기업의 학습 풍토를 평가하는 진단 문항기업의 학습 풍토를 평가하는 진단 문항
기업의 학습 풍토를 평가하는 진단 문항
 
A. Petrucci - Il corso-concorso per la dirigenza pubblica e la Scuola Superio...
A. Petrucci - Il corso-concorso per la dirigenza pubblica e la Scuola Superio...A. Petrucci - Il corso-concorso per la dirigenza pubblica e la Scuola Superio...
A. Petrucci - Il corso-concorso per la dirigenza pubblica e la Scuola Superio...
 
De achievement page 1
De achievement page 1De achievement page 1
De achievement page 1
 
Pagine da golf preparazione atletica
Pagine da golf preparazione atleticaPagine da golf preparazione atletica
Pagine da golf preparazione atletica
 
1. Strategia nel Social Media Marketing > Roberto Lacchini, Markeven
1. Strategia nel Social Media Marketing > Roberto Lacchini, Markeven1. Strategia nel Social Media Marketing > Roberto Lacchini, Markeven
1. Strategia nel Social Media Marketing > Roberto Lacchini, Markeven
 
Escuela de Idiomas Uce Almeida
Escuela de Idiomas Uce AlmeidaEscuela de Idiomas Uce Almeida
Escuela de Idiomas Uce Almeida
 
CHAT Y REDES SOCIALES
CHAT Y REDES SOCIALESCHAT Y REDES SOCIALES
CHAT Y REDES SOCIALES
 

Similar a Sesion 01 funciones y_procedimientos

Similar a Sesion 01 funciones y_procedimientos (20)

Sentenciasenvisualbasicnet2019
Sentenciasenvisualbasicnet2019Sentenciasenvisualbasicnet2019
Sentenciasenvisualbasicnet2019
 
Practica 6
Practica 6Practica 6
Practica 6
 
Clase nro2 vb net 2010 rivera & g
Clase nro2 vb net 2010 rivera & gClase nro2 vb net 2010 rivera & g
Clase nro2 vb net 2010 rivera & g
 
Practica 6 gerardo
Practica 6 gerardoPractica 6 gerardo
Practica 6 gerardo
 
Funciones en c++
Funciones en c++Funciones en c++
Funciones en c++
 
Aplicacion motos login
Aplicacion motos loginAplicacion motos login
Aplicacion motos login
 
3152
31523152
3152
 
Funciones en VB
Funciones en VBFunciones en VB
Funciones en VB
 
Presentacion
PresentacionPresentacion
Presentacion
 
Introducción a la programación
Introducción a la programaciónIntroducción a la programación
Introducción a la programación
 
codigos de algunas pantallas
codigos de algunas pantallas codigos de algunas pantallas
codigos de algunas pantallas
 
Guia n5 tam 2009 1
Guia n5 tam 2009 1Guia n5 tam 2009 1
Guia n5 tam 2009 1
 
Unidad 3, Programacion Estructurada
Unidad 3, Programacion EstructuradaUnidad 3, Programacion Estructurada
Unidad 3, Programacion Estructurada
 
Sentencias en visual basic
Sentencias en visual basicSentencias en visual basic
Sentencias en visual basic
 
06 diagrama de clases1
06 diagrama de clases106 diagrama de clases1
06 diagrama de clases1
 
Guia n2 tam 2009 1
Guia n2 tam 2009 1Guia n2 tam 2009 1
Guia n2 tam 2009 1
 
Estructuras repetitivas (Ejercicio)
Estructuras repetitivas (Ejercicio)Estructuras repetitivas (Ejercicio)
Estructuras repetitivas (Ejercicio)
 
Visual basic cbtis
Visual basic cbtisVisual basic cbtis
Visual basic cbtis
 
PROGRAMACION--DISEÑO.pdf
PROGRAMACION--DISEÑO.pdfPROGRAMACION--DISEÑO.pdf
PROGRAMACION--DISEÑO.pdf
 
Presentacion capitulo 6
Presentacion capitulo 6Presentacion capitulo 6
Presentacion capitulo 6
 

Sesion 01 funciones y_procedimientos

  • 2. Funciones Son el código estructurado que realizan un proceso y luego este, como resultado, retornan un solo y único valor de algún tipo en particular correspondiente al de una variable u objeto. Creación: <Acceso>Function NombreFunc(Arg1 As Tipo1, Arg2 As Tip2, …) As TipoRetorno ‘ Declaración de Variables locales ‘ Proceso Return ValorRetorno End Function
  • 3. • TipoRetorno Es el tipo de dato o Clase que retornará la función y es importante que coincida con el ValorRetorno que se devuelva en la función. • <Acceso> Es si es Public, Private u otro acceso. Además los argumentos pueden ser de cero a más argumentos indicando que tipo de dato es cada uno para delimitarlos en las llamadas a la función.
  • 4. Llamada a una función Cuando se requiere llamar a la función o método, debemos referirlo por su nombre con sus respectivos argumentos entre paréntesis y recibir el retorno en una variable o como argumento para otro método. Dim Variable AS TipoRetorno Variable = NombreFunc(Arg1, Arg2, …) MetodoOtro(NombreFunc(Arg1, Arg2, …)
  • 5. Otra forma de devolver el valor único es: <Acceso>Function NombreFunc(Arg1, As Tipo1, Arg2 As Tip2, …) As TipoRetorno ‘ Declaración de Variables locales ‘ Proceso NombreFunc=ValorRetorno End Function
  • 6. En los casos anteriores se asume que la función (método) se esta invocando desde dentro de la misma o en su defecto de un módulo. Considerar: • Cuando un método es llamado dentro de la misma clase, no se requiere anteponerle el nombre del objeto • Cuando es llamado desde una instancia de objeto, si requiere anteponerle el nombre del objeto.
  • 7. Ejemplo: Class MiClase Public Prop AS Integer Public Function Func1(ByVal Arg1 As Single) As Single Dim R A Single R = Arg1 * 2 Return R End Function End Class
  • 8. Class OtraClase Dim Obj As New MiClase Dim Y, Z As Single Y = Obj.Func1() Z = Obj.Func1(Y) End Class
  • 9. Aplicación Crear una aplicación empleando métodos con valores de retorno Public Class Actividad2 Private Sub Button1_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button1.Click Dim x, r As Single x = InputBox("ingresar Número:") r = raiz1(x) MsgBox("La raíz cuadrada es " & r, , "Método 1") r = Raiz2(x) MsgBox("La raiz cuadrada es " & r, , "Método 2") End Sub
  • 10. Aplicación Private Function Raiz1(ByVal x As Single) As Single Dim rz As Single rz = Math.Sqrt(x) Raiz1 = rz End Function Private Function Raiz2(ByVal x As Single) As Single Dim rz As Single rz = Math.Sqrt(X) Return rz End Function End Class
  • 11. Procedimientos Son el código estructurado que realizan un proceso y no hay un retorno de valores luego de este. Creación: <Acceso>Sub NombreProc(Arg1, As Tipo1, Arg2 As Tip2, …) ‘ Declaración de Variables locales ‘ Proceso End Sub
  • 12. • <Acceso> Es si es Public, Private u otro acceso. Además los argumentos pueden ser de cero a más argumentos indicando que tipo de dato es cada uno para delimitarlos en las llamadas al procedimiento.
  • 13. Llamada a un Procedimiento Cuando se requiere llamar a un procedimiento, debemos referirlo por su nombre con sus respectivos argumentos entre paréntesis. NombreProc(Arg1, Arg2, … Y si son referenciados desde un método de una instancia de un objeto. Obj.NombreProc(Arg1, Arg2, …)
  • 14. Aplicación Crear una aplicación empleando métodos sin valores de retorno Public Class Actividad3 Private Sub Button1_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button1.Click If Me.TextBox1.Text.Trim.Length > 0 Then Letras(Me.TextBox1.Text) Else Letras("Escribe algo") Me.TextBox1.Focus() End If Me.TextBox1.Clear() End Sub
  • 15. Aplicación Private Sub Letras(ByVal T As String) Dim Titulo As String Titulo = Me.Text Me.Text = "## " & T & " ##" & Me.ProductName MsgBox(T, , "Mensaje") Me.Text = Titulo End Sub End Class
  • 16. PARÁMETROS POR VALOR Y POR REFERENCIA
  • 17. Parámetros por Valor (ByVal) Public Class Form1 Private sub Button1_Click(ByVal sender As System.Object, ByVal e AS System.EventArgs) Handles Button1_Click Dim X As Integer ‘1 X=120 ‘2 Proc(X) ‘3 MsgBox(X) ‘6 End Sub Private Sub Proc(ByVal A As Integer) ‘3 MsgBox(A) ‘4 A=200 ‘5 End Sub End Class
  • 18. Parámetros por Referencia (ByRef) Public Class Form1 Private sub Button1_Click(ByVal sender As System.Object, ByVal e AS System.EventArgs) Handles Button1_Click Dim X As Integer ‘1 X=120 ‘2 Proc(X) ‘3 MsgBox(X) ‘6 End Sub Private Sub Proc(ByRef A As Integer) ‘3 MsgBox(A) ‘4 A=200 ‘5 End Sub End Class
  • 19. Aplicación Crear una aplicación empleando métodos por Referencia Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim X As Integer X = InputBox("Ingresar un Número") Cuadrado(X) MsgBox(X, , "El Cuadrado es:") End Sub Private Sub Cuadrado(ByRef N As Integer) N = N ^ 2 End Sub End Class
  • 20. Crear una aplicación empleando parámetros que permita, calcular la sumatoria de un número ingresado. Crear una aplicación empleando parámetros que permita, calcular el factorial de un número ingresado. Práctica