Tema Nº10: Estructuras de Control en VB .NET
Comentarios:
Las estructuras de control contienen bloques de código que serán ejecutados en función del resultado obtenido al evaluar una expresión asociada a la estructura. Al igual que en PSeInt, las estructuras de control se dividen en dos tipos, Selectivas y Repetitivas, las cuales tienen el mismo funcionamiento.
Estas estructuras son:
Selectivas:
If (simple)
If Else (double)
If Else If (anidada)
Select Case (multiple)
Repetitivas:
For .... Next (para)
Do While .... Loop (mientras)
Do Until .....Loop (repetir)
Exit
Estas estructuras son:
Selectivas:
If (simple)
If Else (double)
If Else If (anidada)
Select Case (multiple)
Repetitivas:
For .... Next (para)
Do While .... Loop (mientras)
Do Until .....Loop (repetir)
Exit
Conclusiones:
Las estructuras de control se puede observar que siguen el mismo funcionamiento que las utilizada en PSeInt, con la diferencia que ahora están en ingles, una estructura nueva presentada en esta practica es Exit, la cual su función es salirse de un bloque de instrucciones si se cumple una condición planteada.
Practica #10
Problema 1:
Capturar por teclado la cantidad vendida y si la venta supera los 25,000 imprimir el mensaje meta superada.
Código VB .NET:
Module Module1
Sub Main()
Dim venta As Integer
Console.Write("Ingrese cantidad obtenida de sus ventas: ")
venta = Console.ReadLine()
Console.WriteLine()
If venta > 25000 Then
Console.Write("Meta Superada!")
Else
Console.Write("Meta no superada :(")
End If
Console.ReadLine()
End Sub
End Module
Problema 3:
Capturar la edad de una persona, determinar e imprimir si es o no mayor de edad
Código VB .NET:
Module Module2
Sub Main()
Dim edad As Integer
Console.Write("Ingrese su edad: ")
edad = Console.ReadLine
Console.WriteLine()
If edad >= 18 Then
Console.Write("Usted es mayor de edad!")
Else
Console.Write("Usted no es mayor de edad")
End If
Console.ReadLine()
End Sub
End Module
Problema 5:
Capturar por teclado 3 números enteros y determinar cuál es el mayor.
Código VB .NET:
Module Module3
Sub Main()
Dim n1, n2, n3 As Integer
Console.WriteLine("Ingrese 3 numeros enteros")
Console.WriteLine("El programa le indicara cual es el mayor")
Console.Write("Ingrese primer numero: ")
n1 = Console.ReadLine()
Console.Write("Ingrese segundo numero: ")
n2 = Console.ReadLine()
Console.Write("Ingrese tercer numero: ")
n3 = Console.ReadLine()
Console.WriteLine()
If n1 > n2 And n1 > n3 Then
Console.Write("El numero mayor es: " & n1)
Else
If n2 > n3 And n2 > n1 Then
Console.Write("El numero mayor es: " & n2)
Else
If n3 > n1 And n3 > n2 Then
Console.Write("El numero mayor es: " & n3)
Else
Console.Write("Los numeros son iguales")
End If
End If
End If
Console.ReadLine()
End Sub
End Module
Problema 7:
Capturar un número por teclado e imprimir si dicho número es primo o no.
Código VB .NET:
Module Module4 Sub Main() Dim n, a As Integer Console.Write("Ingrese un número: ") n = Console.ReadLine a = 0 For i = 1 To n If n Mod i = 0 Then a = a + 1 End If Next If a = 2 Then Console.Write("El número es primo!") Else Console.Write("El número no es primo...") End If Console.ReadLine() End Sub End Module
Problema 9:
Mostrar los números del 1 al 100.
Código VB .NET:
Module Module5
Sub Main()
Dim n As Integer
Console.WriteLine("Mostrando los numeros el 1 al 100")
Console.WriteLine()
For n = 1 To 100
Console.WriteLine(n)
Next
Console.ReadLine()
End Sub
End Module
Problema 11:
Capturar 10 números enteros, calcular e imprimir el cubo de la suma de los números capturados.Código VB .NET:Module Module6 Sub Main() Dim n, num, total As Integer total = 0 Console.WriteLine("Ingrese 10 numeros:") For n = 1 To 10 num = Console.ReadLine() total = total + num Next Console.WriteLine() Console.WriteLine("El cubo de la suma de los numeros ingresados es: " & (total ^ 3)) Console.ReadLine() End Sub End Module
Problema 13:
Capturar la nota promedio y el promedio de asistencia de una cantidad de estudiantes especificada por el usuario a través del teclado, calcular e imprimir cuantos aprobaron la materia, cuantos harán complementario y cuantos reprobaron.Código VB .NET:Module Module7Sub Main() Dim n, P, A, total As Decimal Dim apro, comple, repro As Integer apro = 0 comple = 0 repro = 0 Console.Write("Ingrese la cantidad de estudiantes: ") n = Console.ReadLine() Console.WriteLine() For i = 1 To n Console.WriteLine("Estudiante " & i) Console.Write("Nota promedio: ") P = Console.ReadLine() Console.Write("Promedio de asistencia: ") A = Console.ReadLine() Console.WriteLine() total = (P + A) / 2 If total >= 6 Then apro = apro + 1 Else If total >= 5 And total <= 5.99 Then comple = comple + 1 Else If total < 5 Then repro = repro + 1 End If End If End If Next Console.WriteLine() Console.WriteLine("Nº Aprovados: " & apro) Console.WriteLine("Nº Complementarios: " & comple) Console.WriteLine("Nº Reprovados: " & repro) Console.ReadLine() End Sub End ModuleProblema 15:Escriba un programa para generar 5 tablas de multiplicar de números aleatorios entre 20 y 50.Código VB .NET:Module Module8Sub Main() Dim i, n, tabla, resp As Integer Console.WriteLine("Generando 5 tablas de multiplicar aleatorias entre los numeros de 20 y 50") Console.WriteLine() Randomize() Do Until tabla = 5 n = CInt(Int(50 - 20 + 1) * Rnd() + 20) For i = 1 To 10 resp = n * i Console.WriteLine(n & "x" & i & " = " & resp) Next Console.WriteLine() tabla = tabla + 1 Loop Console.ReadLine() End Sub End ModuleProblema 17:Capturar por teclado un número de teléfono, calcular e imprimir cuantos dígitos pares e impares posee.Código VB .NET:Module Module9 Sub Main() Dim telefono As String Dim pares, impar As Integer pares = 0 impar = 0 Console.WriteLine("Vea cuantos números pares e impares posee su numero telefónico!") Console.Write("Ingrese su número de telefono: ") telefono = Console.ReadLine() Console.WriteLine() For i = 0 To telefono.Length - 1 If telefono.Substring(i, 1) Mod 2 = 0 Then pares = pares + 1 Else impar = impar + 1 End If Next Console.Write("Pares: ") For i = 0 To telefono.Length - 1 If telefono.Substring(i, 1) Mod 2 = 0 Then Console.Write(telefono.Substring(i, 1) & " ") End If Next Console.WriteLine() Console.Write("Impares: ") For i = 0 To telefono.Length - 1 If telefono.Substring(i, 1) Mod 2 <> 0 Then Console.Write(telefono.Substring(i, 1) & " ") End If Next Console.WriteLine() Console.WriteLine() Console.WriteLine("Números pares: " & pares) Console.WriteLine("Números impares: " & impar) Console.ReadLine() End Sub End ModuleProblema 19:Escriba un programa que proporcione al usuario un menú con las siguientes opciones de conversión de decimal a [1] binario, [2] octal, [3] hexadecimal y [4] salir.Código VB .NET:Module Module10Sub Main() Dim op, num As Integer Dim a, b, c As String Console.WriteLine("Conversor Decimal a otras bases numéricas v2.0") Console.WriteLine() Console.WriteLine("¿A que base desea convertir?") Console.WriteLine("[1] Binario") Console.WriteLine("[2] Octal") Console.WriteLine("[3] Hexadecimal") Console.WriteLine("[4] Salir") Console.Write("Su opción es: ") op = Console.ReadLine() If op = 4 Then Exit Sub Console.WriteLine Console.Write("Ingrese número en base 2 a convertir: ") num = Console.ReadLine() Console.Clear() Select Case op Case 1 Console.WriteLine("Convirtiendo " & num & " a Binario..") Do Until num < 2 b = b & CStr(num Mod 2) num = Int(num / 2) Loop b = b & num c = StrReverse(b) Console.WriteLine() Console.WriteLine("Respuesta: " & c) Case 2 Console.WriteLine("Convirtiendo " & num & " a Octal..") num = Oct(num) Console.WriteLine() Console.WriteLine("Respuesta: " & num) Case 3 Console.WriteLine("Convirtiendo " & num & " a Hexadecimal..") a = Hex(num) Console.WriteLine() Console.WriteLine("Respuesta: " & a) End Select Console.ReadLine() End Sub End ModuleArchivo de solución del Proyecto
[haga clic en la imagen para descargar]* Nota, el archivo de solución de este proyecto se encuentra en formato Visual Studio 2012, si se planea abrir el proyecto en una versión 2010 visite el siguiente link.
No hay comentarios:
Publicar un comentario