intentaba hacer un codigo para la siguiente problema:
Una empresa grande paga a sus vendedores mediante comiciones. Los vendedores reciben $200 por semana, mas el 9% de sus ventas brutas en esa semana.Por ejemplo, un vendedor que vende $5000 de mercancias en 1 semana reciebe $200 mas el 9% de $5000, es decir recibe un total de $650. hacer una aplicacion que reciba como entrada los articulos vendidos por el vendedor durante la ultima semana, y que calcule y muestre los ingresos de ese vendedor. No hay limite en cuanto al numero de articulos que un vendedor puede vender.
Para ello cree tres entidades:
Producto
using System;
namespace Proyecto.Entidades
{
class Producto
{
public int Precio { get; set; }
}
}
Vendedor
using System;
namespace Proyecto.Entidades
{
class Vendedor
{
public string Nombre { get; set; }
public double Sueldo { get; set; } = 200;
}
}
Venta
using System;
using System.Collections.Generic;
namespace Proyecto.Entidades
{
class Venta{
public Vendedor Vendedor { get; set; }
public List<double> Productos{get; set;}
public Venta(string NombreVende, List<double> Productos){
Vendedor.Nombre = NombreVende;
this.Productos= Productos;
}
}
}
Main
using System;
using System.Collections.Generic;
using Proyecto.Entidades;
namespace Proyecto
{
class Program
{
public static void Main(string[] args)
{
var pproducto = new List<double>();
int i = 1;
Console.WriteLine("Digiete el nombre del vendedor: ");
string nombre = Console.ReadLine();
Console.WriteLine($"Digiete el valor del producto #{i} vendido por {nombre} : ");
double producto= int.Parse(Console.ReadLine());
pproducto.Add(producto);
var item = pproducto[pproducto.Count - 1];
while (item != 0)
{ i++;
Console.WriteLine($"Digiete el valor del producto #{i} vendido por {nombre} : ");
pproducto.Add(int.Parse(Console.ReadLine()));
item = pproducto[pproducto.Count - 1];
}
var venta = new Venta(nombre, pproducto);
foreach (var precio in venta.Productos)
{
venta.Vendedor.Sueldo += precio * 0.9;
}
Console.WriteLine($"{venta.Vendedor.Nombre} tuve un sueldo de: {venta.Vendedor.Sueldo}");
}
}
}
Haciendo el clasico Dotnet build aparece que no tengo ningun error, sin embargo a la correr el proyecto me sale el siguien error:
Unhandled exception. System.NullReferenceException: Object reference not set to an instance of an object. at Proyecto.Entidades.Venta..ctor(String NombreVende, List`1 Productos) in C:\Users\Sebastian\Desktop\Mis cositas\Digital School\Documentacion\Proyecto\Entidades\Venta.cs:line 12 <- esta linea hace referencia al Vendedor.Nombre = NombreVend el cual paso por parameto en el constructor de la calse Venta
at Proyecto.Program.Main(String[] args) in C:\Users\Sebastian\Desktop\Mis cositas\Digital School\Documentacion\Proyecto\Program.cs:line 28 <- esta linea hace referencia donde instancio el objeto venta de la clase Venta
PD: está es la primera vez que formulo una pregunta en el stackoverflow si hago algo mal o que pueda estar mejor, les pedire el favor de hacermelo saber, gracias. :)