Sunteți pe pagina 1din 10

Universidad Laica Eloy Alfaro de

Manab

Carrera de Ingeniera PRCTICAS DE


Elctrica LABORATORIO

Nombre del alumno


LUIS ADOLFO JARAMILLO BAQUE
ndice

1. Marco Terico ................................................................................. 3


2. Objetivos de la practica .................................................................... 4
3. Equipos requeridos y/o software...................................................... 4
4. Procedimiento experimental............................................................ 4
5. Validacion de modelos tericos. ...................................................... 4
6. Conclusiones ................................................................................... 4
Anexos ...................................................................................................7
1. Marco Terico
Funciones Y Procedimientos (ByVal y ByRef)

1. Procedimiento

Definicin

Un procedimiento es un bloque de instrucciones de Visual Basic incluido entre una instruccin


de declaracin (Function, Sub, Operator, Get, Set) y una declaracin End correspondiente.
Todas las instrucciones ejecutables de Visual Basic deben estar incluidas en algn
procedimiento.

Llamar a un procedimiento

Los procedimientos se invocan desde otras partes del cdigo. Esto se conoce como una
llamada a procedimiento. Cuando finaliza la ejecucin de un procedimiento, ste devuelve el
control al cdigo que lo invoc, que recibe el nombre de cdigo de llamada. El cdigo de
llamada es una instruccin o una expresin contenida en una instruccin, que hace referencia
al procedimiento por su nombre y le transfiere el control.

Tipos de procedimientos

Visual Basic utiliza varios tipos de procedimientos:

Subprocedimientos (Visual Basic) : ejecutan acciones pero no devuelven un valor al cdigo de


llamada.

Los procedimientos de control de eventos son procedimientos Sub que se ejecutan en


respuesta a un evento provocado por una accin del usuario o por un suceso en un programa.

Procedimientos de funcin (Visual Basic): devuelven un valor al cdigo de llamada.

Pueden realizar otras acciones antes de volver.

Procedimientos de propiedad (Visual Basic): devuelven y asignan valores de

propiedades en objetos o mdulos.

Procedimientos de operador (Visual Basic): definen el comportamiento de un

operador estndar cuando uno o los dos operandos son una clase definida

recientemente o una estructura.

Procedimientos genricos en Visual Basic: definen uno o varios parmetros de tipo

adems de sus parmetros normales, de forma que el cdigo de llamada puede

pasar tipos de datos especficos cada vez que realiza una llamada.
Como crear un procedimiento en Visual Basic

Se incluye un procedimiento entre una instruccin de declaracin de inicio (Sub o Function) y


una instruccin de declaracin de fin (End Sub o End Function). Todo el cdigo del
procedimiento est incluido entre estas instrucciones.

Un procedimiento no puede contener otro procedimiento, por lo que sus instrucciones de


inicio y de fin deben estar fuera de cualquier otro procedimiento.

Si tiene un cdigo que realiza la misma tarea en distintos lugares, puede escribir la tarea una
vez como procedimiento y llamarlo despus desde distintos lugares del cdigo.

Para crear un procedimiento que no devuelve un valor

Fuera de cualquier otro procedimiento, utilice una instruccin Sub, seguida de una instruccin
End Sub.

En la instruccin Sub, agregue detrs de la palabra clave Sub el nombre del procedimiento y, a
continuacin, la lista de parmetros entre parntesis.

Coloque las instrucciones del cdigo del procedimiento entre las instrucciones Sub y End Sub

Para crear un procedimiento que devuelva un valor

Fuera de cualquier otro procedimiento, utilice una instruccin Function, seguida de una
instruccin End Function.

En la instruccin Function, agregue detrs de la palabra clave Function el nombre del


procedimiento y una clusula As en la que se especifique el tipo de datos del valor devuelto.

Coloque las instrucciones de cdigo del procedimiento entre las instrucciones Function y End
Function.

Utilice una instruccin Return para devolver el valor al cdigo de llamada.

Para conectar el nuevo procedimiento con los anteriores bloques de cdigo

repetitivos

Asegrese de que define el nuevo procedimiento en un lugar donde el cdigo anterior tiene
acceso a l.

En el anterior bloque de cdigo


repetitivo, reemplace las instrucciones
que realizan la tarea repetitiva por una
nica instruccin que llama al
procedimiento Sub o Function.

Si el procedimiento es una Function


que devuelve un valor, asegrese de
que la instruccin de llamada realiza una accin con el valor devuelto, como almacenarlo en
una variable o, de lo contrario, se perder el valor.
2. Equipos requeridos y/o software

Internet, laptop, impresora, hojas bond, esferos

3. Procedimiento experimental
Agregamos los elementos necesarios para el Programa con ByVal y ByRef, ingresando el
cdigo necesario para su correcta ejecucin

4. Validacin de modelos tericos .

1. El cdigo indica mediante las funciones y Procedimiento, al momento de ingresar


un valor con la funcin ByVal nos indica que si Existe un Retorno del mismo
Valor es decir que al Momento de Ejecutar el programa no Cambia el valor
original
2. Y con la funcin ByRef el valor original nos ha cambiado por completo hasta la
variable original sufre cambios. Ejemplo:

5. Conclusiones
Las funciones y procedimientos nos ayudan a encontrar rpidamente un error sin necesidad
de adentrarnos a todo el programa, y es muy utilizado ya que facilita demasiados procesos
que requieres una cadena de cdigo en cambio podemos disponer de este sin necesidad de
irlo revisando todo.
6. Anexos

Programa 1.
Realizar una Matriz que permita:
1. ingreso aleatorio
2. rango del 1 al 100
3. y que me permita buscar un numero en la n posicin
4. sumar los valores
5. sacar promedio
6. buscar el nmero mayor y menos
9. no se repite el ingreso de los valores
10. ordenar de forma ascendente y descendente
11. Realizar un ejercicio que toda vaya en funciones o procedimientos.

Public Class Form1


Dim a, b, e, f, h, i, j, mult As Integer
Dim vo(1000), it As Integer
Dim hight As Integer
Dim g As Double
Dim nmy, vmayor, vmenor, nmn, s As Integer
Dim z As Integer
Dim m(1000, 1000) As String

Private Sub TextBox1_KeyPress(sender As Object, e As KeyPressEventArgs)


Handles TextBox1.KeyPress
If Char.IsNumber(e.KeyChar) Then
e.Handled = False
If Char.IsSeparator(e.KeyChar) Then
e.Handled = False
If Char.IsControl(e.KeyChar) Then
e.Handled = False
Else
e.Handled = True
End If
End If
End If
a = Val(TextBox1.Text)
If Asc(e.KeyChar) = 13 Then
TextBox2.Focus()
End If
End Sub

Private Sub TextBox2_KeyPress(sender As Object, e As KeyPressEventArgs)


Handles TextBox2.KeyPress
If Char.IsNumber(e.KeyChar) Then
e.Handled = False
If Char.IsSeparator(e.KeyChar) Then
e.Handled = False
If Char.IsControl(e.KeyChar) Then
e.Handled = False
Else
e.Handled = True
End If
End If
End If
b = Val(TextBox2.Text)
matriz(a, b)
If Asc(e.KeyChar) = 13 Then
ListBox1.Focus()
ListBox3.Focus()
End If
End Sub
Sub nmenor(ByRef v1 As Integer)
If vmenor = 0 Then
vmenor = v1
Else
hight = 0
hight = Math.Min(Convert.ToDouble(vmenor), Convert.ToDouble(v1))
vmenor = hight
End If
End Sub
Sub matriz(ByVal x As Single, ByVal y As Single)
it = 0
ReDim m(x, y)
Randomize()
mult = x * y
For it = 1 To mult
For i = 1 To x
For j = 1 To y
m(i, j) = Int(1 + Rnd() * 100)
vo(it) = m(i, j)
suma(i, j, m(i, j))
buscar(e, f)
nmenor(m(i, j))

Next

Next
ListBox3.Items.Add(vo(it))
Next
For it = 1 To mult
ListBox2.Items.Add(vo(it))
ListBox2.Sorted = True
Next
For i = 1 To y
If x >= 1 And x <= 9 And y >= 1 And y <= 9 Then
If x = 9 And y = 9 Then
ListBox1.Items.Add(Str(m(i, 1)) & Str(m(i, 2)) & " " &
Str(m(i, 3)) & " " & Str(m(i, 4)) & " " & Str(m(i, 5)) & " " & Str(m(i, 6)) & " "
& Str(m(i, 7)) & " " & Str(m(i, 8)) & " " & Str(m(i, 9)))
End If
If x = 8 And y = 8 Then
ListBox1.Items.Add(Str(m(i, 1)) & Str(m(i, 2)) & " " &
Str(m(i, 3)) & " " & Str(m(i, 4)) & " " & Str(m(i, 5)) & " " & Str(m(i, 6)) & " "
& Str(m(i, 7)) & " " & Str(m(i, 8)))
End If
If x = 7 And y = 7 Then
ListBox1.Items.Add(Str(m(i, 1)) & Str(m(i, 2)) & " " &
Str(m(i, 3)) & " " & Str(m(i, 4)) & " " & Str(m(i, 5)) & " " & Str(m(i, 6)) & " "
& Str(m(i, 7)))
End If
If x = 6 And y = 6 Then
ListBox1.Items.Add(Str(m(i, 1)) & Str(m(i, 2)) & " " &
Str(m(i, 3)) & " " & Str(m(i, 4)) & " " & Str(m(i, 5)) & " " & Str(m(i, 6)))
End If
If x = 5 And y = 5 Then
ListBox1.Items.Add(Str(m(i, 1)) & Str(m(i, 2)) & " " &
Str(m(i, 3)) & " " & Str(m(i, 4)) & " " & Str(m(i, 5)))
End If
If x = 4 And y = 4 Then
ListBox1.Items.Add(Str(m(i, 1)) & Str(m(i, 2)) & " " &
Str(m(i, 3)) & " " & Str(m(i, 4)))
End If
If x = 3 And y = 3 Then
ListBox1.Items.Add(Str(m(i, 1)) & Str(m(i, 2)) & " " &
Str(m(i, 3)))
End If
If x = 2 And y = 2 Then
ListBox1.Items.Add(Str(m(i, 1)) & Str(m(i, 2)))
End If
End If
Next

For i = 1 To y
For j = 1 To y
If nmy < m(i, j) Or nmy > m(y, y) Then
vmayor = Math.Max(Convert.ToDouble(nmy),
Convert.ToDouble(m(i, j)))
nmy = vmayor
s = s + m(i, j)
End If
Next
Next
txtmayorm.Text = nmy
txtmenorm.Text = vmenor
promedio(z)
lblsuma.Text = (z)
End Sub
Sub suma(ByVal m As Integer, ByVal n As Integer, ByVal o As Integer)
z += o
End Sub
Sub promedio(ByRef prom As Double)
Dim mult As Double
mult = a * b
g = prom / mult
txtpromediom.Text = g
End Sub
Private Sub ListBox1_Enter(sender As Object, e As EventArgs) Handles
ListBox1.Enter

End Sub

Private Sub TextBox4_KeyPress(sender As Object, e As KeyPressEventArgs)


Handles TextBox4.KeyPress
If Asc(e.KeyChar) = 13 Then
TextBox3.Focus()
End If
End Sub

Private Sub TextBox3_KeyPress(sender As Object, e As KeyPressEventArgs)


Handles TextBox3.KeyPress
f = Val(TextBox3.Text)
h = Val(TextBox4.Text)
buscar(h, f)
If Asc(e.KeyChar) = 13 Then
lblbuscar.Focus()
End If
End Sub
Sub buscar(ByVal c As Integer, ByVal d As Integer)
lblbuscar.Text = "la posicion:" & c & "," & d & "=" & m(c, d)
End Sub

Private Sub lblbuscar_Enter(sender As Object, e As EventArgs) Handles


lblbuscar.Enter

End Sub
End Class

S-ar putea să vă placă și