Pages

sábado, 16 de noviembre de 2013

autoevaluación



Este periodo en particular fue el que mas me gusto pues aprendí a reducir un poco mas el código de los proyectos que realizo hacer arreglos y funciones,  todo esto se a vuelto muy interesante para mi pues programar es divertido y a la ves me ayuda a poder analizar y encontrar lógica a las cosas.

También aprendí un poco de lo que es programar en windows from, esta manera de programar es la que mas me gusto porque puedo hacerlo de muchas manera diferentes el mismo problema y siempre llegare a la misma solución.

Esto me dejo con la curiosidad de lo que estudiare en programación II ya que la materia cada vez se va volviendo mas interesantes.

Aunque también tuve mis bajas, muchas veces me confundía en como deberían ir los códigos o no los así de la manera correcta  pero gracias al ingeniero que me aclaro las dudas logre realizar las diversas practicas y seguir aprendiendo cada día mas, así como también estudiar un poco mas para cada día ir mejorando y obtener mas practica.


practica #13


Aplicaciones Windows Forms


ejercicio 1:

Elaborar una mini factura, para capturar el nombre del producto, precio unitario y cantidad, el usuario seleccionara un descuento de del 0 al 15% y al hacer clic en calcular mostrará el subtotal, descuento, iva y total a pagar.

Código VB .NET:

Public Class Form1

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    End Sub
------------------------------------------------------------------------------------------------------------------
    Private Sub RadioButton1_CheckedChanged(sender As Object, e As EventArgs)Handles RadioButton1.CheckedChanged
        porc.Text = "0"
    End Sub
------------------------------------------------------------------------------------------------------------------
    Private Sub RadioButton2_CheckedChanged(sender As Object, e As EventArgs)Handles RadioButton2.CheckedChanged
        porc.Text = "1"
    End Sub
------------------------------------------------------------------------------------------------------------------
    Private Sub RadioButton3_CheckedChanged(sender As Object, e As EventArgs)Handles RadioButton3.CheckedChanged
        porc.Text = "5"
    End Sub

    Private Sub RadioButton4_CheckedChanged(sender As Object, e As EventArgs)Handles RadioButton4.CheckedChanged
        porc.Text = "10"
    End Sub
------------------------------------------------------------------------------------------------------------------
    Private Sub RadioButton5_CheckedChanged(sender As Object, e As EventArgs)Handles RadioButton5.CheckedChanged
        porc.Text = "15"
    End Sub
------------------------------------------------------------------------------------------------------------------
    Private Sub Button1_Click(sender As Object, e As EventArgsHandlesButton1.Click
        subtotal.Text = precio.Text * cantidad.Text
        Dim desc, totaln As Decimal
        descuento.Text = porc.Text & "%"
        desc = porc.Text / 100
        iva.Text = 0.13
        totaln = subtotal.Text * (iva.Text + 1)
        total.Text = FormatCurrency(totaln * (1 - desc), 2)
    End Sub
------------------------------------------------------------------------------------------------------------------
    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        End
    End Sub

End Class




ejercicio 2:

Elaborar un formulario para capturar datos personales, nombre, email, sexo y estudios realizados, al hacer clic en el botón Agregar que actualice los contadores, limpie los textboxs, radios y checkboxs y envíe el cursor al cuadro de texto para ingresar el nombre. Al dar clic en Reiniciar que limpie el formulario, ponga a cero todos los contadores y envíe el enfoque al cuadro de texto para ingresar el nombre. Validar que al dar clic en Agregar el usuario haya ingresado el nombre, email, sexo y haya seleccionado al menos uno de los estudios realizados.

Código VB .NET:

Public Class Form2
    Private Sub Button1_Click(sender As Object, e As EventArgsHandlesButton1.Click
        'Contador de checkbox activos
        Dim cCheck As Integer = 0
        If CheckBachi.Checked = True Then
            cCheck = cCheck + 1
        End If
        
If CheckUni.Checked = True Then
            cCheck = cCheck + 1
        
Then
        
If CheckMae.Checked = True Then
            cCheck = cCheck + 1
        
Then
        
If CheckDoc.Checked = True Then
            cCheck = cCheck + 1
        
Then
        'Condiciones para que funcione el botón
        If nombre.Text = "" Or email.Text = "" Or cCheck = 0 And(RadioButton1.Checked = False Or RadioButton2.Checked = False) Then
            MsgBox("                  Faltan datos :(" & vbCrLf & vbCrLf & "       Ingrese toda la información.")
        Else
            If CheckBachi.CheckState = CheckState.Checked Then
                cBachi.Text = cBachi.Text + 1
            End If
            
If CheckUni.CheckState = CheckState.Checked Then
                cUni.Text = cUni.Text + 1
            
End If
            
If CheckMae.CheckState = CheckState.Checked Then
                cMae.Text = cMae.Text + 1
            
End If
            
If CheckDoc.CheckState = CheckState.Checked Then
                cDoc.Text = cDoc.Text + 1
            
End If
            nombre.Clear()
            email.Clear()
            RadioButton1.Checked = False
            RadioButton2.Checked = 
False
            CheckBachi.Checked = 
False
            CheckUni.Checked = 
False
            CheckMae.Checked = 
False
            CheckDoc.Checked = 
False
            cCheck = 0
            nombre.Select()
        End If
    End Sub
------------------------------------------------------------------------------------------------------------------
    Private Sub Button2_Click(sender As Object, e As EventArgsHandlesButton2.Click
        nombre.Clear()
        email.Clear()
        RadioButton1.Checked = False
        RadioButton2.Checked = 
False
        CheckBachi.Checked = 
False
        CheckUni.Checked = 
False
        CheckMae.Checked = 
False
        CheckDoc.Checked = 
False
        cBachi.Text = "0"
        cUni.Text = "0"
        cMae.Text = "0"
        cDoc.Text = "0"
        nombre.Select()
    End Sub
------------------------------------------------------------------------------------------------------------------
    Private Sub Button3_Click(sender As Object, e As EventArgsHandlesButton3.Click
        End
    End Sub
End Class




practica #11


Procedimientos y Funciones en VB .NET
ejercicio 1:

Escriba un procedimiento que imprima la hora actual.

Código VB .NET:

Module Module1

    Sub Main()
        hora()
        Console.ReadLine()
    End Sub
--------------------------------------------------------------------------------------------------------
    Sub hora()
        Console.WriteLine("Hora actual: " & TimeOfDay)
    End Sub


End Module




ejercicio 2:

Escriba una aplicación que capture un texto por teclado y que posea un procedimiento para mostrar el texto capturado en mayúsculas y color rojo y otro procedimiento para mostrarlo en minúsculas y color amarillo.

Código VB .NET:

Module Module2
    Sub Main()
        Dim texto As String
        Console.WriteLine("Ingrese un texto:")
        texto = Console.ReadLine()
        Console.WriteLine()
        RojoUp(texto)
        AmaLow(texto)
        Console.ReadLine()
    End Sub
--------------------------------------------------------------------------------------------------------
    Sub RojoUp(ByVal texto As String)
        Console.Write("Rojo y Mayúsculas: ")
        Console.ForegroundColor = ConsoleColor.Red
        Console.WriteLine(texto.ToUpper)
    End Sub
--------------------------------------------------------------------------------------------------------
    Sub AmaLow(ByVal texto As String)
        Console.ForegroundColor = ConsoleColorGray
        Console.Write("Amarillo y Minusculas: ")
        Console.ForegroundColor = ConsoleColor.Yellow
        Console.WriteLine(texto.ToLower)
    End Sub


End Module




ejercicio 3:

Escriba una aplicación para capturar el número de teléfono de 5 participantes y que posea un procedimiento que seleccione e imprima de forma aleatoria el número de teléfono ganador.


Código VB .NET:

Module Module3
    Sub Main()
        Console.WriteLine("Prueba tu suerte!")
        Console.WriteLine("Ingrese 5 números de telefono")
        Seleccion()
        Console.ReadLine()
    End Sub
--------------------------------------------------------------------------------------------------------
    Sub Seleccion()
        Dim tel(4) As String
        For i = 0 To 4
            tel(i) = Console.ReadLine()
        Next

        Dim re As New Random()
        Dim n As Integer
        n = re.Next(0, 5)
        Console.WriteLine()
        Console.Write("El telefono ganador es: " & tel(n))
    End Sub

End Module




ejercicio 4:

Escriba una función para calcular el valor a pagar a un empleado por servicios, capturando por teclado el nombre y horas trabajadas, estableciendo el valor de la hora a $ 6.50


Código VB .NET:


Module Module4
    Sub Main()
        Dim hora As Decimal
        Console.WriteLine("Monto a pagar a un empleado por horas trabajadas")
        Console.Write("Ingrese la cantidad de horas: ")
        hora = Console.ReadLine
        Console.WriteLine()
        Console.WriteLine("Monto a pagar: $" & sueldo(hora))
        Console.ReadLine()
    End Sub
--------------------------------------------------------------------------------------------------------
    Function sueldo(x As Integer) As Decimal
        Return x * 6.5
    End Function

End Module




ejercicio 5:

Escriba una función que indique si un año capturado por teclado es o no es bisiesto.


Código VB .NET:

Module Module5
    Sub Main()
        Dim año As Integer
        Console.WriteLine("Compruebe si un año es bisiesto")
        
Console.Write("Ingrese un año: ")
        año = 
Console.ReadLine()
        
Console.WriteLine()
        
Console.WriteLine(bisiesto(año))
        
Console.ReadLine()
    End Sub

--------------------------------------------------------------------------------------------------------
    Function bisiesto(x As Integer)
        If (x Mod 4 = 0) And ((x Mod 100 <> 0) Or (x Mod 400 = 0)) Then
            Return "El año es bisiesto"
        Else
            Return "El año no es bisiesto"        End If
    End Function
End Module



ejercicio 6:

Escriba una función que retorne el mayor de dos números ingresados por teclado.


Código VB .NET:


Module Module6
    Sub Main()
        Dim num1, num2 As Integer
        Console.WriteLine("¿Qué número es mayor?")
        Console.WriteLine("Ingrese dos numeros:")
        num1 = Console.ReadLine
        num2 = Console.ReadLine
        Console.WriteLine()
        Console.Write("El número mayor es: " & mayor(num1, num2))
        Console.ReadLine()
    End Sub
--------------------------------------------------------------------------------------------------------
    Function mayor(x As Integer, y As Integer)
        If x > y Then
            Return x
        Else
            Return y
        End If
    End Function
End Module




ejercicio 7:

Escriba una función que retorne si un número capturado por teclado es par o impar.


Código VB .NET:

Module Module7
    Sub Main()
        Dim k As Integer
        Console.WriteLine("Descubra si un número es par o impar")
        
Console.Write("Introduzca un número: ")
        k = 
Console.ReadLine()
        
Console.WriteLine()
        
Console.Write("Él número es " & ParImpar(k))
        
Console.ReadLine()
    End Sub

--------------------------------------------------------------------------------------------------------
    Function ParImpar(x As IntegerAs String
        If x Mod 2 = 0 Then
            Return "par"
        Else
            Return
 "impar"
        End If
    End Function
End Module





ejercicio 8:

Escriba una función que retorne el factorial de un número capturado por teclado.


Código VB .NET:

Module Module8
    Sub Main()
        Dim num As Integer
        Console.WriteLine("Calcule el factorial de un número")
        Console.Write("Introduzca un número: ")
        num = Integer.Parse(Console.ReadLine())
        Console.WriteLine()
        Console.WriteLine(num & "! = " & facto(num))
        Console.Read()
    End Sub
--------------------------------------------------------------------------------------------------------
    Function facto(ByVal num) As Integer
        If num = 1 Then
            Return num
        Else
            Return num * facto(num - 1)
        End If
    End Function
End Module




ejercicio 9:

Escriba una aplicación para calcular la nota final de un alumno, utilizando el sistema de evaluación de la materia programación I, crear una sola función que permita calcular la nota promedio de cada periodo.


Código VB .NET:

Module Module9
    Sub Main()
        Dim nota1, nota2, nota3, prom1, prom2, prom3, final As Decimal
        Console.WriteLine("Calcule la nota final de un alumno:")
        Console.WriteLine()
        Console.WriteLine("PERIODO 1")
        Console.WriteLine("Ingrese nota 1")
        nota1 = Console.ReadLine()
        Console.WriteLine("Ingrese nota 2")
        nota2 = Console.ReadLine()
        Console.WriteLine("Ingrese nota 3")
        nota3 = Console.ReadLine()
        prom1 = prom(nota1, nota2, nota3)
        Console.Clear()
        '---------------------------------------------
        Console.WriteLine("PERIODO 2")
        Console.WriteLine("Ingrese nota 1")
        nota1 = Console.ReadLine()
        Console.WriteLine("Ingrese nota 2")
        nota2 = Console.ReadLine()
        Console.WriteLine("Ingrese nota 3")
        nota3 = Console.ReadLine()
        prom2 = prom(nota1, nota2, nota3)
        Console.Clear()
        '---------------------------------------------
        Console.WriteLine("PERIODO 3")
        Console.WriteLine("Ingrese nota 1")
        nota1 = Console.ReadLine()
        Console.WriteLine("Ingrese nota 2")
        nota2 = Console.ReadLine()
        Console.WriteLine("Ingrese nota 3")
        nota3 = Console.ReadLine()
        prom3 = prom(nota1, nota2, nota3)
        Console.Clear()

        Console.WriteLine("RESULTADOS")
        Console.WriteLine()
        Console.WriteLine("Periodo 1: " & prom1)
        Console.WriteLine("Periodo 2: " & prom2)
        Console.WriteLine("Periodo 3: " & prom3)
        final = (prom1 + prom2 + prom3) / 3
        Console.WriteLine()
        Console.WriteLine("Nota final: " & FormatNumber(final, 1))
        Console.ReadLine()
    End Sub
--------------------------------------------------------------------------------------------------------
    Function prom(x As Decimal, y As Decimal, z As Decimal)
        Dim total As Decimall
        total = ((x * 0.25) + (y * 0.25) + (z * 0.5) 
        Return FormatNumber(total, 1)
    End Function
End Module




ejercicio 10:

Escribir una aplicación que capture por teclado 4 números y posea 3 funciones de nombre sumar pero que la primera permita sumar 2 números, la segunda 3 y la cuarta 4 números.


Código VB .NET:

Module Module10
    Sub Main()
        Dim n1, n2, n3, n4 As Integer
        Console.WriteLine("Ingrese números a sumar")
        n1 = 
Console.ReadLine()
        n2 = 
Console.ReadLine()
        n3 = 
Console.ReadLine()
        n4 = 
Console.ReadLine()
        
Console.WriteLine()
        
Console.WriteLine("Probando la función:")
        
Console.WriteLine("Sumando 4 números: " & sumar(n1, n2, n3, n4))
        
Console.WriteLine("Sumando 3 números: " & sumar(n1, n2, n3))
        
Console.WriteLine("Sumando 2 números: " & sumar(n1, n2))
        
Console.ReadLine()
    End Sub
--------------------------------------------------------------------------------------------------------
    Function sumar(ByVal x As IntegerByVall y As IntegerAs Integer
        Return x + y
    End Function
--------------------------------------------------------------------------------------------------------
    Function sumar(ByVal x As IntegerByVal y As IntegerByVal z As IntegerAs Integer
        
Return x + y + z
    
End Function
--------------------------------------------------------------------------------------------------------

    Function sumar(ByVal x As Integer, y As Integer, z As Integer, a As IntegerAs Integer
        
Return x + y + z + a
    
End Function
End Module