Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Entrega Basic 2005
Entrega Basic 2005
INDICE
CAPITULO VI
Arreglos
01
Arrays Unidimensional
01
Arrays Multidimensional
02
Ejercicio 34
03
Ejercicio 35
04
Ejercicio 36
06
Ejercicio 37
07
ARREGLOS
Array Unidimensional
Indice
Indice
Indice
Indice
[0]
[1]
[2]
[3]
=
=
=
=
1
2
3
4
Bueno ahora se ve mas claro lo que hablo, como se habrn dado cuenta al
declarar un array e indicar los elementos que va a contener dicho array, siempre
debemos de tener en cuenta de esto: Numero de elementos 1, por ejemplo, si
queremos un array de 4 elementos tendramos que indicarle as: Array (3), por que
seria el numero de elementos 1 en este caso 4 1 = 3.
Aunque es un poco difcil de acostumbrarse, ya que en las versiones
antiguas no eran as, se parecen un poco al C, C++.
Array Multidimensional
Como vemos, hay tres letras dentro de los parntesis, separadas por comas,
lo cual indica que el array es tridimensional, puesto que los tres ndices del mismo
se separan uno de otro por comas. Veamos un pequeo ejemplo que lo clarifique
un poco ms:
Este array es bidimensional y servira para almacenar una lista de alumnos por
Nombres y Apellidos, tenemos un array bidimensional (el primer ndice del array
nos almacenar los nombres y el segundo ndice nos almacenar los apellidos).
Veamos un poco de cdigo y una tabla para que se hagn una idea de cmo se
almacena esto:
Alumnos(0,0)="Jos";
Alumnos(0,1)="Lus";
Alumnos(0,2)="Juan";
Alumnos(0,3)="Pedro";
Alumnos(1,0)="Vargas";
Alumnos(1,1)="Moreno";
Alumnos(1,2)="Lpez";
Alumnos(1,3)="Peralta";
Alumnos
Alumnos
Alumnos
Alumnos
0
1
2
3
Nombres (0)
Jos
Lus
Juan
Pedro
Apellidos (1)
Vargas
Moreno
Lpez
Peralta
EJERCICIOS
34. Se desea mostrar los cuatros primeros nmeros positivos y el nmero del ndice
en donde es almacenado en el array unidimensional.
Solucin:
Module Ejercicio34
'Ejemplo de un Array Unidimensional
Sub Main()
Dim ArrayUnidimensional(3) As Integer
Dim X, Num As Integer
For X = 0 To 3
Num = X + 1
ArrayUnidimensional(X) = Num
Next
Console.WriteLine()
Console.WriteLine("Array Unidimensional 4")
Console.WriteLine()
For X = 0 To 3
Console.WriteLine("Indice [{0}{1}{2}", X, "] = ", ArrayUnidimensional(X))
Next
Console.ReadLine()
End Sub
End Module
35. Se desea mostrar los diecisis primeros nmeros positivos y el nmero del
ndice en donde es almacenado en el array bidimensional.
Solucin:
Module Ejercicio35
'Ejemplo de un Array Bidimensional
Sub Main()
Dim ArrayBidimensional(3, 3) As Integer
Dim X, Y, Num As Integer
For X = 0 To 3
For Y = 0 To 3
Num = Y + 1
If X = 1 Then
Num += 4
ElseIf X = 2 Then
Num += 8
ElseIf X = 3 Then
Num += 12
End If
ArrayBidimensional(X, Y) = Num
Next
Next
Console.WriteLine()
Console.WriteLine("Array Bidimensional 4 x 4")
Console.WriteLine()
For X = 0 To 3
For Y = 0 To 3
Console.WriteLine("Indice [{0}{1}{2}{3}{4}", X, "][", Y, "] = ",
ArrayBidimensional(X, Y))
Next
Next
Console.ReadLine()
End Sub
End Module
ArrayBidimensional(3,3)
0
1
2
3
0
1
5
9
13
1
2
6
10
14
2
3
7
11
15
3
4
8
12
16
36. Se desea mostrar los Nombres y Apellidos de 4 alumnos que estn almacenados
en arrays unidimensionales diferentes.
Solucin:
Module Ejercicio36
'Este algoritmo contiene dos Array, uno que almacena los nombres
'y el otro almacena los apellidos y despus muestra los nombres y apellidos
Sub Main()
Dim Nombres(3), Apellidos(3) As String
Dim X As Integer
Nombres(0) = "Joel"
Nombres(1) = "Nahum"
Nombres(2) = "Krizia"
Nombres(3) = "Giselle"
Apellidos(0) = "Chuco"
Apellidos(1) = "Chuco"
Apellidos(2) = "Rupay"
Apellidos(3) = "Valverde"
For X = 0 To 3
Console.Write("indice [{0}{1}{2}", X, "] = ", Nombres(X))
Console.WriteLine(" {0}", Apellidos(X))
Next
Console.ReadLine()
End Sub
End Module
Para este ejercicio hemos declarado dos arrays uno llamado Nombres y otro
llamado Apellidos ambos van a contener 4 elementos y van a ser de tipo cadena
(String) ya que van a almacenar textos, despus de declararlos pasaremos a
almacenar valores en los arrays, una vez almacenado mediante un For,
empezaremos a mostrar los nombres y los apellidos, cuando el contador valga 0, se
mostrar los elementos del ndice 0 de ambos arrays, as sucesivamente hasta
mostrar los cuatro elementos, mas o menor se almacenara as los array,
grficamente.
Nombres(3)
Apellidos(3)
0
Joel
Chuco
Indices
1
2
Nahum
Krizia
Chuco
Rupay
3
Giselle
Valverde
Solucin:
Module Ejercicio37
'Este algoritmo muestra los Nombres y Apellidos almacenados
'en un Array Bidimensional
Sub Main()
Dim NomApe(1, 3) As String
Dim X1, X2, Y As Integer
NomApe(0, 0) = "Joel"
NomApe(0, 1) = "Nahum"
NomApe(0, 2) = "Krizia"
NomApe(0, 3) = "Giselle"
NomApe(1, 0) = "Chuco"
NomApe(1, 1) = "Chuco"
NomApe(1, 2) = "Rupay"
NomApe(1, 3) = "Valverde"
Console.WriteLine("Los Nombres y Apellidos Son: ")
Console.WriteLine()
For X1 = 0 To 0
For Y = 0 To 3
Console.Write("{0}{1}", NomApe(X1, Y), " ")
For X2 = 1 To 1
Console.WriteLine(NomApe(X2, Y))
Next
Next
Next
Console.ReadLine()
End Sub
End Module
0
1
0
Joel
Chuco
1
Nahum
Chuco
2
Krizia
Rupay
3
Giselle
Valverde
Capitulo VII
INDICE
CAPITULO VII
Procedimientos
01
02
Ejercicio 38
03
Ejercicio 39
04
Ejercicio 40
04
Ejercicio 41
05
Ejercicio 42
05
Ejercicio 43
06
Ejercicio 44
07
Ejercicio 45
08
Ejercicio 46
09
Ejercicio 47
10
Ejercicio 48
11
Ejercicio 49
12
Enumeraciones
13
Ejercicio 50
14
Ejercicio 51
15
Ejercicio 52
16
17
Ejercicio 01
17
Ejercicio 02
19
Ejercicio 03
20
Ejercicio 04
20
Ejercicio 05
21
Ejercicio 06
22
Ejercicio 07
22
Ejercicio 08
23
Ejercicio 09
24
Ejercicio 10
25
Ejercicio 11
25
Ejercicio 12
26
Ejercicio 13
27
Ejercicio 14
27
Ejercicio 15
28
Ejercicio 16
28
Ejercicio 17
29
Ejercicio 18
30
Ejercicio 19
30
Ejercicio 20
31
Despedida
32
PROCEDIMIENTOS
Por Valor: Cuando un argumento es pasado por valor, este valor no se podr
alterar, por ejemplo:
Module Ejemplo
Sub Main()
MostrarNumero(1)
Console.ReadLine()
End Sub
Sub MostrarNumero(ByVal Valor As Integer)
Valor = Valor + 1
Console.WriteLine("El Valor del Parametro es: {0}", Valor)
End Sub
End Module
Ahora veremos
argumentos.
algunos ejercicios
de procedimientos, y el paso de
EJERCICIOS
Module Ejercicio38
'Este algoritmo usa un procedimiento extern para mostrar los
'numeros que le son enviados.
Sub Main()
MostrarNumero(1)
MostrarNumero(1001)
MostrarNumero(-532)
Console.ReadLine()
End Sub
Sub MostrarNumero(ByVal Valor As Integer)
Console.WriteLine("El Valor del Parametro es: {0}", Valor)
End Sub
End Module
Module Ejercicio39
'Este algoritmo usa un procedimiento externo para mostrar los
'elementos que le son enviados.
Sub Main()
MostrarEmpleado(32, 25000.0)
Console.ReadLine()
End Sub
Sub MostrarEmpleado(ByVal Edad As Integer, ByVal Salario As Double)
Console.WriteLine("El Empleado Tiene {0}{1}", Edad, " aos")
Console.WriteLine("El Empleado Gana $ {0}", Salario)
End Sub
End Module
Module Ejercicio40
'Este algoritmo usa un Procedimiento externo para realizar una operacin
'y devolver el resultado, para que despues mostrarlo
Sub Main()
Console.WriteLine("100 + 200 = {0}", SumaValores(100, 200))
Console.WriteLine("500 + 501 = {0}", SumaValores(500, 501))
Console.WriteLine("-1 + 1 = {0}", SumaValores(-1, 1))
Console.ReadLine()
End Sub
Function SumaValores(ByVal a As Integer, ByVal b As Integer) As Integer
SumaValores = a + b
End Function
End Module
Module Ejercicio41
'Este algoritmo usa un Procedimiento para mostrar un mensaje
Sub Main()
Console.WriteLine("LLamado a una Funcin")
MuestraMensaje()
Console.WriteLine("Regreso del Llamado a la Funcin")
Console.ReadLine()
End Sub
Sub MuestraMensaje()
Console.WriteLine("Hola, He Sido Rescatado por VB .Net 2005")
End Sub
End Module
Module Ejercicio42
'Este algoritmo usa dos procedimientos para mostrar dos mensajes
Sub Main()
MuestraTitulo()
MuestraLeccion()
Console.ReadLine()
End Sub
Sub MuestraTitulo()
Console.WriteLine("APUNTES: Apuntes de COMPUTACIN")
End Sub
Sub MuestraLeccion()
Console.WriteLine("LECCION: Conocimientos Bsicos Sobre Funciones")
Console.WriteLine()
End Sub
End Module
43. Se desea saber el mayor y el menor nmero de tres nmeros que son enviados
a un procedimiento externo.
Module Ejercicio43
'Este algoritmo usa un procedimientos para determinar que nmero es mayor y
'menor de los tres numeros que le son enviados
Sub Main()
Console.WriteLine()
grandeYpequeo(1, 2, 3)
Console.WriteLine()
grandeYpequeo(500, 0, -500)
Console.WriteLine()
grandeYpequeo(1001, 1001, 1001)
Console.ReadLine()
End Sub
Sub grandeYpequeo(ByVal a As Integer, ByVal b As Integer, ByVal c As
Integer)
Dim pequeo, grande As Integer
If a < b AndAlso b < c Then
pequeo = a
ElseIf b < a AndAlso b < c Then
pequeo = b
Else
pequeo = c
End If
If b < a AndAlso c < a Then
grande = a
ElseIf a < b AndAlso c < b Then
grande = b
Else
grande = c
End If
Console.WriteLine("El Valor Ms Grande es: {0}", grande)
Console.WriteLine("El Valor Ms Pequeo es: {0}", pequeo)
End Sub
End Module
Module Ejercicio44
'Este algoritmo utiliza un procedimiento para realizar y mostrar la tablar
'de multiplicar deseada, indicando de que nmero quiere que se le muestre
'la tabla y hasta que nmero quiere que se le muestre.
Sub Main()
Dim n, m As Integer
Console.Write("Que Tabla de Multiplicar Desea? : ")
n = CInt(Console.ReadLine)
Console.Write("Cuantos Nmeros Desea Ver? : ")
m = CInt(Console.ReadLine)
Console.WriteLine()
TablaMult(n, m)
Console.ReadLine()
End Sub
Sub TablaMult(ByVal n As Integer, ByVal m As Integer)
Dim i As Integer
Console.WriteLine("Tabla de Multiplicar del {0}", n)
Console.WriteLine()
For i = 1 To m
Console.WriteLine("{0}{1}{2}{3}{4}", i, " x ", n, " = ", i * n)
Next
End Sub
End Module
Module Ejercicio45
'Este algoritmo muestra los divisores comunes de dos nmeros
'enviados.
Sub Main()
Dim a, b As Integer
Console.WriteLine("Divisores Comunes de Dos Nmeros")
Console.WriteLine()
Console.Write("Ingrese Primer Nmero: ")
a = CInt(Console.ReadLine)
Console.Write("Ingrese Segundo Nmero: ")
b = CInt(Console.ReadLine)
Console.WriteLine()
Comunes(a, b)
Console.ReadLine()
End Sub
Sub Comunes(ByVal a As Integer, ByVal b As Integer)
Dim i As Integer = 1
While (i <= a And i <= b)
If a Mod i = 0 AndAlso b Mod i = 0 Then
Console.WriteLine(i)
End If
i=i+1
End While
End Sub
End Module
46. Se desea saber si una fecha es correcta, esta fecha es ingresada por el usuario.
Module Ejercicio46
'Este algoritmo utiliza un procedimiento para verificar si una fecha que se
'halla ingresado es correcta o incorrecta
Sub Main()
Dim dia, mes, ao As Integer
Console.Write("Ingrese el Da: ")
dia = CInt(Console.ReadLine)
Console.Write("Ingrese el Mes: ")
mes = CInt(Console.ReadLine)
Console.Write("Ingrese el Ao: ")
ao = CInt(Console.ReadLine)
Console.WriteLine()
FechaOk(dia, mes, ao)
Console.ReadLine()
End Sub
Sub FechaOk(ByVal dia As Integer, ByVal mes As Integer, ByVal ao As Integer)
Dim MaxDia As Integer
Select Case mes
Case 1, 3, 5, 7, 10, 12, 8
MaxDia = 31
Case 4, 6, 9, 11
MaxDia = 30
Case 2
If ao Mod 4 = 0 AndAlso ao Mod 100 <> 0 Or ao Mod 400 = 0 Then
MaxDia = 29
Else
MaxDia = 28
End If
Case Else
Console.WriteLine("Mes Incorrecto")
Exit Sub
End Select
If dia > 0 And dia <= MaxDia And mes > 0 And mes < 13 And ao > 0 Then
Console.WriteLine("La Fecha Es Correcta")
Else
Console.WriteLine("La Fecha Es Incorrecta")
End If
End Sub
End Module
Module Ejercicio47
'Este algoritmo halla la longitud del tercer lado de un triangulo
'utilizando el teorema del coseno.
Sub Main()
Dim a, b, c, Alfa As Double
Console.WriteLine("Soluciona un Tringulo : ")
Console.WriteLine("Caso: Lado - ngulo - Lado : ")
Console.Write("Ingrese Lado b : ")
b = CDbl(Console.ReadLine)
Console.Write("Ingrese Lado c : ")
c = CDbl(Console.ReadLine)
Console.Write("ngulo Formado (En Radianes) : ")
Alfa = CDbl(Console.ReadLine)
a = LadosAngulos(b, c, Alfa)
Console.WriteLine("El Tercer ngulo Mide {0}", a)
Console.ReadLine()
End Sub
Function LadosAngulos(ByVal b As Double, ByVal c As Double, ByVal Alfa As
Double) As Double
Dim a As Double
a = Math.Sqrt(b * b + c * c - 2 * b * c * Math.Cos(Alfa))
LadosAngulos = a
End Function
End Module
Module Ejercicio48
'Este algoritmo muestra un mensaje diciendo si un
'nmero es primo o no
Sub Main()
Dim n As Integer
Console.Write("Ingrese el Nmero a Evaluar : ")
n = CInt(Console.ReadLine)
If EsPrimo(n) = True Then
Console.WriteLine("El Nmero SI es Primo")
Else
Console.WriteLine("El Nmero NO es Primo")
End If
Console.ReadLine()
End Sub
Function EsPrimo(ByVal n As Integer) As Boolean
Dim i As Integer
i=n-1
While (i > 1)
If n Mod i = 0 Then
EsPrimo = False
Exit Function
End If
i=i-1
End While
EsPrimo = True
End Function
End Module
49. Se desea hallar lo siguiente: Si los dos nmeros son mayores que cero halla su
producto y en caso contrario hallar su suma, y nos tendr que preguntar si
queremos continuar con la aplicacin.
Module Ejercicio49
'Este algoritmo solicita dos nmeros, si los dos son mayores
'que cero halla su producto, en caso contrario halla su suma
'y hace una pregunta sobre si desea continuar con el programa
Sub Main()
Dim a, b, Resp As Integer
Do
Console.Clear()
Console.ForegroundColor = ConsoleColor.Red
Console.WriteLine()
Console.Write("Ingrese el Primer Nmero: ")
a = CInt(Console.ReadLine)
Console.Write("Ingrese el Segundo Nmero: ")
b = CInt(Console.ReadLine)
If a > 0 AndAlso b > 0 Then
Resp = a * b
Else
Resp = a + b
End If
Console.WriteLine("El Resultado de La Operacion es: {0}", Resp)
Loop While (Pregunta() = True)
End Sub
Function Pregunta() As Boolean
Dim Resp As Char
Console.ForegroundColor = ConsoleColor.Green
Console.WriteLine()
Console.Write("Desea Continuar [s/n] ==> ")
Resp = CChar(Console.ReadLine)
If Resp = "s" Or Resp = "S" Then
Pregunta = True
Else
Pregunta = False
End If
End Function
End Module
Enum Colores
Azul = 255
Rojo
Verde
End Enum
Las enumeraciones pueden ser de varios tipos de datos, como integer, Byte,
Long, etc. Cuando declaramos una variable de tipo enumeracin, que hayamos
creado, solo podremos asignarles la constante que contenga esta enumeracin,
para que me entiendan vean este grfico.
50. Esta aplicacin nos muestra que valor contiene cada constante de la
enumeracin Colores.
Module Ejercicio50
Enum Colores
Azul
Rojo
Verde
End Enum
Sub Main()
Dim Color As Colores
Color = Colores.Azul
Console.WriteLine("El Nmero 0 Vale: {0}", Color)
Color = Colores.Rojo
Console.WriteLine("El Nmero 1 Vale: {0}", Color)
Color = Colores.Verde
Console.WriteLine("El Nmero 2 Vale: {0}", Color)
End Sub
End Module
51. Este ejercicio usamos una enumeracin para cambiar de color a la letra de la
aplicacin.
Module Ejercicio51
Enum Colores
Azul
Rojo
Verde
End Enum
Sub Main()
Dim Numero As Integer
Dim Color As String
Console.WriteLine("{0}{1}", Space(30), "ELEGIR COLOR")
Console.WriteLine()
Console.WriteLine("{0}{1}", Space(5), "[0] Color Azul")
Console.WriteLine("{0}{1}", Space(5), "[1] Color Rojo")
Console.WriteLine("{0}{1}", Space(5), "[2] Color Verde")
Console.WriteLine()
Console.Write("Ingrese el Nmero de Color ==> ")
Numero = CInt(Console.ReadLine)
If Numero < Colores.Azul Or Numero > Colores.Verde Then
Console.WriteLine("Color no Vlido")
Exit Sub
End If
Console.WriteLine()
Console.Write("Usted Eligio el color ")
Select Case Numero
Case Colores.Azul
Console.ForegroundColor = ConsoleColor.Blue
Color = "Azul"
Case Colores.Rojo
Console.ForegroundColor = ConsoleColor.Red
Color = "Rojo"
Case Colores.Verde
Console.ForegroundColor = ConsoleColor.Green
Color = "Verde"
End Select
Console.WriteLine(Color)
Console.ForegroundColor = ConsoleColor.Gray
Console.WriteLine()
End Sub
End Module
52. Esta aplicacin nos mostrara que tipo de cuenta es asignada a un cliente usando
una enumeracin, teniendo en cuenta que debe de tener mas de 2500 soles en
saldo para tener una cuenta corriente.
Module Ejercicio52
Enum TipoCuenta
Corriente
Ahorro
End Enum
Sub Main()
Dim Cuenta As TipoCuenta
Dim Cliente As String
Dim Saldo As Integer
Console.Write("Ingrese el Nombre del Cliente: ")
Cliente = Console.ReadLine
Console.Write("Ingrese el saldo de su Cuenta: ")
Saldo = CInt(Console.ReadLine)
If Saldo < 2500 Then
Cuenta = TipoCuenta.Ahorro
Else
Cuenta = TipoCuenta.Corriente
End If
Console.WriteLine()
Console.WriteLine("{0}{1}", Space(10), "*** DETALLE DE CUENTA DEL
CLIENTE ***")
Console.WriteLine()
Console.WriteLine("Cliente: {0}", Cliente)
Console.WriteLine("El tipo de cuenta del cliente es: {0}", Cuenta)
Console.WriteLine("El saldo de la cuenta del cliente es: {0}", Saldo)
End Sub
End Module
Ejercicio 01
Module zodiaco
'Este algoritmo me indica a que signo pertenece, segun la
'fecha que uno ingresa.
Sub Main()
Dim Dia, Mes As Integer
Console.Write("Ingrese el Da de Nacimiento: ")
Dia = CInt(Console.ReadLine)
Console.Write("Ingrese el mes de Nacimiento: ")
Mes = CInt(Console.ReadLine)
Console.Write("Tu Signo del Zodiaco es: ")
Select Case Mes
Case 1
If Dia < 21 Then
Console.Write("Capricornio")
Else
Console.Write("Acuario")
End If
Case 2
If Dia < 20 Then
Console.Write("Acuario")
Else
Console.Write("Piscis")
End If
Case 3
If Dia < 21 Then
Console.Write("Piscis")
Else
Console.Write("Aries")
End If
Case 4
If Dia < 21 Then
Console.Write("Aries")
Else
Console.Write("Tauro")
End If
Case 5
If Dia < 21 Then
Console.Write("Tauro")
Else
Console.Write("Gminis")
End If
Case 6
If Dia < 22 Then
Console.Write("Geminis")
Else
Module Ecuacion
'Este algoritmo halla las dos soluciones de una ecuacin
Sub Main()
Dim a, b, c, d As Single
Dim x1, x2 As Double
Console.Write("Ingrese el Valor de a: ")
a = CSng(Console.ReadLine)
Console.Write("Ingrese el Valor de b: ")
b = CSng(Console.ReadLine)
Console.Write("Ingrese el Valor de c: ")
c = CSng(Console.ReadLine)
If a <> 0 Then
d=b*b-4*a*c
If d >= 0 Then
x1 = (-b + Math.Sqrt(d)) / (2 * a)
x2 = (-b - Math.Sqrt(d)) / (2 * a)
Console.WriteLine("La Primera Solucin es: {0}", x1)
Console.WriteLine("La Segunda Solucin es: {0}", x2)
Else
Console.WriteLine("Las Soluciones son Imaginarias")
End If
Else
Console.WriteLine("El valor de <a> NO puede ser Cero (0)")
End If
Console.ReadLine()
End Sub
End Module
Ejercicio 04
Module Notas
'Este algoritmo calfica al alumno, de acuerdo a la nota
'obtenida en el examn
Sub Main()
Dim Prom As Integer
Console.Write("La Nota de tu Examen es: ")
Prom = CInt(Console.ReadLine)
If Prom < 0 Xor Prom > 20 Then
Console.WriteLine("VIVO no Mientas")
ElseIf Prom <= 5 Then
Console.WriteLine("PSIMO, Estas ya Difunto")
ElseIf Prom <= 10 Then
Console.WriteLine("DEFICIENTE, Estas en Capilla")
ElseIf Prom <= 15 Then
Console.WriteLine("REGULAR, te Defiendes")
Else
Console.WriteLine("BUENO, Felicitaciones")
End If
Console.ReadLine()
End Sub
End Module
Ejercicio 07
Module Signo
'Este algoritmo nos halla el signo del nmero a evaluar
'y nos muestra la parte entera y fraccionaria del nmero
Sub Main()
Dim x As Single
Console.Write("Ingrese Numero a Evaluar: ")
x = CSng(Console.ReadLine)
If x >= 0 Then
Console.WriteLine("Signo Positivo")
Else
Console.WriteLine("Signo Negativo")
End If
Console.WriteLine("Parte Entera: {0}", Math.Floor(x))
Console.WriteLine("Parte Fraccionaria: {0}", x - Math.Floor(x))
Console.ReadLine()
End Sub
End Module
Ejercicio 08
Module Algoritmo
'Este algoritmo nos halla una funcin dada
Sub Main()
Dim x As Single
Dim y As Double
Console.Write("Ingrese el Valor de x: ")
x = CSng(Console.ReadLine)
If x <= 0 Then
y = x + Math.Sin(x)
Else
If x <= 8 Then
y = 2 * x - Math.Log(x)
Else
If x >= 8 Then
y = Math.Log10(x - 8)
End If
End If
End If
Console.WriteLine("La Funcin Vale -> {0}", y)
Console.WriteLine("Cuando x Vale -> {0}", x)
Console.ReadLine()
End Sub
End Module
Ejercicio 09
Module Triangulo
'Este algoritmo nos solicita que ingresemos tres nmeros
'y no dice si forman un triangulo y nos dice que tipo
'de triangulo se ha formado
Sub Main()
Dim a, b, c As Single
Console.WriteLine("Ingrese Tres Numeros")
Console.Write("Ingrese el Primer Nmero: ")
a = CSng(Console.ReadLine)
Console.Write("Ingrese el Segundo Nmero: ")
b = CSng(Console.ReadLine)
Console.Write("Ingrese el Tercer Nmero: ")
c = CSng(Console.ReadLine)
If a < b + c AndAlso b < a + c AndAlso c < a + b Then
If a = b AndAlso b = c Then
Console.WriteLine("Triangulo Equilatero")
ElseIf a = b Or b = c Or a = c Then
Console.WriteLine("Triangulo Issceles")
Else
Console.WriteLine("Triangulo Escaleno")
End If
Else
Console.WriteLine("No Forman un Triangulo")
End If
Console.ReadLine()
End Sub
End Module
Module Mayor
'Este algoritmo nos indica el mayor de tres nmeros cualquiera
Sub Main()
Dim a, b, c, m As Integer
Console.Write("Ingrese el Primer Nmero: ")
a = CInt(Console.ReadLine)
Console.Write("Ingrese el Segundo Nmero: ")
b = CInt(Console.ReadLine)
Console.Write("Ingrese el Tercer Nmero: ")
c = CInt(Console.ReadLine)
If a >= b Then
If a >= c Then
m=a
Else
m=c
End If
Else
If b >= c Then
m=b
Else
m=c
End If
End If
Console.WriteLine("El Mayor Nmero es: {0}", m)
Console.ReadLine()
End Sub
End Module
Ejercicio 11
Module Expresion
'Este algoritmo no indica si una funcion es discontinua, desde
'cualquier valor que ingresemos a X
Sub Main()
Dim x, y As Single
Console.Write("Ingrese el Valor de x: ")
x = CSng(Console.ReadLine)
If x = 5 Or x = -5 Then
Console.WriteLine("La Funcin es Discontinua")
Else
y = (x - 3) / (x * x - 25)
Console.WriteLine("La Funcin Vale: {0}{1}{2}", y, " Cuando x Vale: ", x)
End If
Console.ReadLine()
End Sub
End Module
Module Multiplo
'Este algoritmo nos muestra si los nmeros ingresados son
'multiplos simultaneamente de cualquier nmero ingresado
Sub Main()
Dim n, d1, d2 As Integer
'Dim q, r1, r2 As Integer
Console.Write("Ingrese el Nmero: ")
n = CInt(Console.ReadLine)
Console.Write("Ingrese el Primer Posible Divisor: ")
d1 = CInt(Console.ReadLine)
Console.Write("Ingrese el Segundo Posible Divisor: ")
d2 = CInt(Console.ReadLine)
'Primera Forma
If n Mod d1 = 0 And n Mod d2 = 0 Then
Console.WriteLine("Es Multiplo de {0}{1}{2}{3}", d1, " y de ", d2, "
Simultaneamente")
Else
Console.WriteLine("No es Multiplo de {0}{1}{2}{3}", d1, " y de ", d2, "
Simultaneamente")
End If
'Segunda Forma
'q = CInt(n / d1)
'r1 = n - (q * d1)
'q = CInt(n / d2)
'r2 = n - (q * d2)
'If r1 = 0 AndAlso r2 = 0 Then
'Console.WriteLine("Es Multiplo de {0}{1}{2}{3}", d1, " y de ", d2, "
Simultaneamente")
'Else
'Console.WriteLine("No es Multiplo de {0}{1}{2}{3}", d1, " y de ", d2, "
Simultaneamente")
'End If
Console.ReadLine()
End Sub
End Module
Module Bisiesto
'Este algoritmo nos indica si un ao es bisiesto o no
Sub Main()
Dim ao As Integer
Console.Write("Ingrese el Ao: ")
ao = CInt(Console.ReadLine)
If ao Mod 4 = 0 And ao Mod 100 <> 0 Or ao Mod 400 = 0 Then
Console.WriteLine("El Ao {0}{1}", ao, " es Bisiesto")
Else
Console.WriteLine("El Ao {0}{1}", ao, " no es Bisiesto")
End If
Console.ReadLine()
End Sub
End Module
Ejercicio 14
Module Ordena
'Este algoritmo ordena tres nmeros cualquiera de mayor a menor
Sub Main()
Dim a, b, c As Integer
Console.Write("Ingrese el Primer Nmero: ")
a = CInt(Console.ReadLine)
Console.Write("Ingrese el Segundo Nmero: ")
b = CInt(Console.ReadLine)
Console.Write("Ingrese el Tercer Nmero: ")
c = CInt(Console.ReadLine)
Console.WriteLine("Los Nmero Ordenados de Mayor a Menor son: ")
If a >= b And b >= c Then
Console.WriteLine(" {0}{1}{2}{3}{4}", a, " ; ", b, " ; ", c)
ElseIf a >= c And c >= b Then
Console.WriteLine(" {0}{1}{2}{3}{4}", a, " ; ", c, " ; ", b)
ElseIf b >= a And a >= c Then
Console.WriteLine(" {0}{1}{2}{3}{4}", b, " ; ", a, " ; ", c)
ElseIf b >= c And c >= a Then
Console.WriteLine(" {0}{1}{2}{3}{4}", b, " ; ", c, " ; ", a)
ElseIf c >= a And a >= b Then
Console.WriteLine(" {0}{1}{2}{3}{4}", c, " ; ", a, " ; ", b)
Else
Console.WriteLine(" {0}{1}{2}{3}{4}", c, " ; ", b, " ; ", a)
End If
Console.ReadLine()
End Sub
End Module
Module Ecuacion
'Este algoritmo nos indica si el coeficiente de X es una
'ecuacin de primer grado
Sub Main()
Dim a, b, x As Single
Console.Write("Ingrese el Coeficiente de x: ")
a = CSng(Console.ReadLine)
Console.Write("Ingrese el Termino Independiente: ")
b = CSng(Console.ReadLine)
If a = 0 Then
Console.WriteLine("No es una Ecuacin de Primer Grado")
Else
x = CSng(-b / a)
Console.Write("La Raz es: {0}", x)
End If
Console.ReadLine()
End Sub
End Module
Ejercicio 16
Module Producto
'Si dos nmeros son positivos calcule su producto
'En caso contrario calcule su suma
Sub Main()
Dim a, b, Res As Integer
Console.Write("Ingrese el Primer Nmero: ")
a = CInt(Console.ReadLine)
Console.Write("Ingrese el Segundo Nmero: ")
b = CInt(Console.ReadLine)
If a > 0 AndAlso b > 0 Then
Res = a * b
Else
Res = a + b
End If
Console.WriteLine("El Resultado de la Operacin es: {0}", Res)
Console.ReadLine()
End Sub
End Module
Module Menor
'Sin usar estructuras repetitivas, lea 5 nmeros y
'Determine el menor
Sub Main()
Dim a, b, c, d, e, Menor As Integer
Console.Write("Ingrese el Primer Nmero: ")
a = CInt(Console.ReadLine)
Console.Write("Ingrese el Segundo Nmero: ")
b = CInt(Console.ReadLine)
Console.Write("Ingrese el Tercer Nmero: ")
c = CInt(Console.ReadLine)
Console.Write("Ingrese el Cuarto Nmero: ")
d = CInt(Console.ReadLine)
Console.Write("Ingrese el Quinto Nmero: ")
e = CInt(Console.ReadLine)
If a < b AndAlso a < c AndAlso a < d AndAlso a < e Then
Menor = a
ElseIf b < a AndAlso b < c AndAlso b < d AndAlso b < e Then
Menor = b
ElseIf c < a AndAlso c < b AndAlso c < d AndAlso c < e Then
Menor = c
ElseIf d < a AndAlso d < b AndAlso d < c AndAlso d < e Then
Menor = d
Else
Menor = e
End If
Console.WriteLine("El Menor Nmero Ingresado es: {0}", Menor)
Console.ReadLine()
End Sub
End Module
Module Funcion
'Este programa nos permite evaluar la funcin:
' x^2+1
Si x <= 8
' x^2+3x+2
Si 0 < x < 3
' x+1
Si x >= 3
Sub Main()
Dim x As Integer
Dim Res As Double
Console.Write("Ingrese el Valor de x: ")
x = CInt(Console.ReadLine)
If x <= 0 Then
Res = Math.Pow(x, 2) + 1
ElseIf 0 < x AndAlso x < 3 Then
Res = Math.Pow(x, 2) + (3 * x) + 2
ElseIf x >= 3 Then
Res = x + 1
End If
Console.WriteLine("El Resultado de La Funcin: {0}", Res)
Console.ReadLine()
End Sub
End Module
Bueno seores con esto acaba la Cuarta entrega de este manual, se que ha
sido muy poco, pero les estoy dejando las 20 soluciones de los ejercicios de la
tercera entrega, en la prxima entrega acabaremos con lo que es consola de
aplicacin para empezar a llevar la consola de Windows, en la prxima entrega
tocaremos lo siguiente, si o si:
Bueno conmigo ser hasta la prxima entrega, ya saben aqu les dejo mi
correo por si tienen alguna duda.
Cuenta en Soles:
067-3008573552
Cuenta en Dlares:
067-3008573560
www.interbank.com.pe