Este es un ejercicio que me pidieron que hiciera usando de tipo consola en Visual Studio con Visual Basic que Calcular Ventas Usando Matrices.
El Enunciado pide lo siguiente.
El Ejercicio debe pedir la cantidad de productos, luego pedir los datos del producto como son: (Nombre, cantidad, Precio) y guardarlos en una matriz, calcule el subtotal de ese producto y quede en la misma matriz. El sistema debe cada vez que guarde un producto si quiere continuar. Al final de la venta debe mostrar el Total de Producto y el total de la venta.
Colabora y Suscribete a mi canal de
La matriz debe queda de esta manera:
0 | 1 | 2 | 3 | |
0 | Platano | 3 | 200 | 600 |
1 | Yuca | 5 | 700 | 3500 |
2 | Ñame | 2 | 600 | 1200 |
Entrando al código hay que crear una solución de tipo “Aplicación Tipo Consola en VB” estoy usando el Visual Studio 2019
Lo primero declaración de variables
Dim CantidadPro As Integer 'Cantidad de productos a vender Dim I As Integer Dim NombrePro As String Dim CantidadVPro As Single Dim ValorPro As Double Dim Ventas(,) As String 'Matriz donde se guardara los productos vendidos Dim TotalProductos As Integer 'Total de productos vendidos
Aqui notamos que la Matriz ventas se crea sin dimensión con una coma dentro de los paréntesis esto es porque solo la declaramos mas no la inicializamos.
El ejercicio nos pide que Pidamos el numero de productos que se van a vender.
'Dijite la cantidad de productos Console.WriteLine("¿Digite la cantidad de productos a procesar?") CantidadPro = Convert.ToInt32(Console.ReadLine())
Console.WriteLine Se usara mostrar un mensaje en pantalla
Console.ReadLine() Lee una linea de texto y la devuelve de tipo String
Entonces estamos mostrando el mensaje para que el usuario sepa que debe escribir y luego leemos lo que escriba lo convertimos a Entero y se lo pasamos a la variable CantidadPro
Ahora inicializamos la matriz y la variable que contara el numero de productos que se procesaran.
'Inicializar ahora la matriz ReDim Preserve Ventas(CantidadPro, 4) TotalProductos = 0
Como ya sabemos el numero de productos que el usuario quiere vender inicializamos la matriz usando ReDim y le pasamos las dimensiones
Luego usamos un For para pedir uno a uno los productos a vender con el limite de el numero de productos que ya el usuario debió digital en CantidadPro
For I = 1 To CantidadPro
Ahora se piden los datos del producto:
'Dijite el nombre del producto Console.WriteLine("****** Producto " & I & " ****** ") Console.WriteLine() 'linea en blanco Console.WriteLine("¿Digite el nombre del producto?") NombrePro = Console.ReadLine() Console.WriteLine("¿Digite la cantidad del producto?") CantidadVPro = Convert.ToSingle(Console.ReadLine()) Console.WriteLine("¿Digite el precio del producto?") ValorPro = Convert.ToDouble(Console.ReadLine())
Aquí convertimos a Single que se usa para números reales Convert.ToSingle() en este caso la cantidad digitada del producto y Convert.ToDouble() para los valores tipo Moneda
Contamos la cantidad de productos que se van agregando.
'Contamos los productos TotalProductos += 1
Calculamos el subtotal, aquí declaro la variable SubTotalPro y Multiplico la cantidad del producto por el precio
'se calcula el subtotal Dim SubTotalPro As Double = CantidadVPro * ValorPro
Ahora agregamos los datos del producto a la matriz Venta
'Ingresar datos a nuestra matriz 'se agregan los valores a la matriz Ventas(I, 0) = NombrePro Ventas(I, 1) = CantidadVPro Ventas(I, 2) = ValorPro Ventas(I, 3) = SubTotalPro
Le preguntamos al usuario si quiere terminar la venta.
'Se le pregunta al usuario si quiere continuar Console.WriteLine("¿Desea Finalizar la venta (S) ?") Dim Continuear = Console.ReadLine() If Continuear.ToUpper() = "S" Then Exit For End If
Se le pide al usuario que digite una ‘S’ si quiere terminar la venta en caso de que escriba si, Convertirmos el contenido de la variable continuar a Mayúsculas y validamos que sea la letra ‘S’
Si si es ‘S’ usamos Exit For para salir del ciclo For
Y por ultimo mostramos los totales
'calcular total venta Dim SumaTotalVenta As Double 'Se recorre el array con la variable total productos que contiene el numero total de productos introducidos For I = 1 To TotalProductos SumaTotalVenta += Convert.ToDouble(Ventas(I, 3)) Next 'Mostramos el resultado de la venta Console.WriteLine("Total Productos: " & TotalProductos) Console.WriteLine("Total Venta: $ " & SumaTotalVenta)
Para calcular el total de la venta usamos un For que llegue hasta el numero de productos procesados para eso usamos la variable TotalProductos que se encargo de contar, luego sumo uno a uno los SubTotales que están en la posición 3 de la matriz.
Por ultimo se muestra en Pantalla el TotalProductos y la SumaTotalVenta que son los valores que nos piden.
Enlace para descargar el Proyecto