none
Ayuda con este programa RRS feed

  • Pregunta

  • Hola a todos, Bueno, estoy haciendo un pequeño programa en consola, que muestre una serie de productos con su precio

    permita al cliente seleccionar un producto, mostrar el precio, calcular el iva y mostrarlo y permitir seleccionar otro producto, 

    al finalizar debe mostrar, el total de iva facturado, el total de compras del día y la cantidad de producto vendido. ejemplo: aceite 2 vendidos, harina 3 vendidas, en este ultimo, es que tengo problemas, en que el programa muestre la cantidad de producto comprado al finalizar la compra. Así va mi código:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    
    namespace ConsoleApplication20
    {
        class Program
        {
            static void Main(string[] args)
            {
                
                int codigo, x = 0;
                double m = 0, n = 0, iva = 0;
                int[] c = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
                double[] precios = { 6.00, 2.00, 3.00, 6.00, 15.00, 10.00, 2.50, 12.00, 2.50, 10.00 };
                string[] productos = { "Aceite", "Arroz", "Azucar", "Caraotas", "Carne de Primera", "Carne de Segunda", "Harina Precocida", "Leche en Polvo", "Pasta", "Pollo entero" };
                Console.ForegroundColor = ConsoleColor.Yellow;
                Console.WriteLine("\t\t¡Precios Regulados y Solidarios!");
                for (int i = 0; i < precios.Length; i++)
                {
                    Console.ForegroundColor = ConsoleColor.Cyan;
                    Console.Write("Codigo " + c[i]);
                    Console.WriteLine("\tPrecio  " + precios[i] + "Bsf" + "\tProducto " + productos[i]);
                }
                char k;
                do
                {
                        Console.Write("\nIngrese Codigo de producto que desea Adquirir ");
                        codigo = int.Parse(Console.ReadLine());
                        do
                        {
                        do
                        {
                                Console.ForegroundColor = ConsoleColor.Cyan;
                                Console.Write("\nIngrese Cantidad de " + productos[codigo] + " que desea adquirir ");
                                x = int.Parse(Console.ReadLine());
    
                            if (x == 0)
                            {
                                Console.ForegroundColor = ConsoleColor.Red;
                                Console.WriteLine("\nCantidad no valida");
                            }
    
                            if(codigo == 6 && x > 2)
                            {
                                Console.ForegroundColor = ConsoleColor.Red;
                                Console.WriteLine("\nSolo 2 Harinas Por Persona");
                            }
    
                        } while (codigo == 6 && x > 2);
    
                        } while (x == 0);
    
                        iva = precios[codigo] * 0.12;
    
                        Console.ForegroundColor = ConsoleColor.Red;
                        Console.WriteLine("\nIVA " + iva + "Bsf" + " - Precio del producto + IVA " + (iva + precios[codigo]) + "Bsf");
                        Console.WriteLine("\nTotal IVA "+ iva*x+" - Total a Pagar por su producto "+((iva*x)+(precios[codigo]*x)));
                        n += iva * x;
                        m += precios[codigo] * x;
    
                    Console.ForegroundColor = ConsoleColor.Cyan;
                    Console.Write("\nPrecione La tecla S para Comprar otro producto o N para Finalizar Compra ");
                        k = char.Parse(Console.ReadLine());
                    
                    } while (k == 's') ;
                
                    Console.ForegroundColor = ConsoleColor.Red;
                    Console.Write("\nTotal IVA Facturado = " + n+"Bsf");
                    Console.Write("\tTotal Compras del Día = " + (m+n)+ "Bsf\n");
                    Console.ReadKey();
            }
        }
    }
     Espero puedan ayudarme, Gracias.
    martes, 7 de marzo de 2017 16:37

Respuestas

  • No entiendo muy bien tu problema, supongo que quieres hacer un listado final con el total de las compras.

    Podrias trabajar con matrices multidimensionales:

    https://www.tutorialesprogramacionya.com/csharpya/detalleconcepto.php?codigo=146&inicio=20

    Te adjunto el siguiente codigo, que da el resultado de la imagen, espero que te sirva.

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    
    namespace ConsoleApplication20
    {
        class Program
        {
            static void Main(string[] args)
            {
    
                int codigo, x = 0;
                double m = 0, n = 0, iva = 0;
                int[,] c = { { 0,0 }, { 1, 0 }, { 2, 0 }, { 3, 0 }, { 4, 0 }, { 5, 0 }, { 6, 0 }, { 7, 0 }, { 8, 0 }, {9, 0 } }; // codigo y cantidad
                double[] precios = { 6.00, 2.00, 3.00, 6.00, 15.00, 10.00, 2.50, 12.00, 2.50, 10.00 };
                string[] productos = { "Aceite", "Arroz", "Azucar", "Caraotas", "Carne de Primera", "Carne de Segunda", "Harina Precocida", "Leche en Polvo", "Pasta", "Pollo entero" };
                Console.ForegroundColor = ConsoleColor.Yellow;
                Console.WriteLine("\t\t¡Precios Regulados y Solidarios!");
                for (int i = 0; i < precios.Length; i++)
                {
                    Console.ForegroundColor = ConsoleColor.Cyan;
                    Console.Write("Codigo " + c[i,0]);
                    Console.WriteLine("\tPrecio  " + precios[i] + "Bsf" + "\tProducto " + productos[i]);
                }
                char k;
                do
                {
                    Console.Write("\nIngrese Codigo de producto que desea Adquirir ");
                    codigo = int.Parse(Console.ReadLine());
                    do
                    {
                        do
                        {
                            Console.ForegroundColor = ConsoleColor.Cyan;
                            Console.Write("\nIngrese Cantidad de " + productos[codigo] + " que desea adquirir ");
                            x = int.Parse(Console.ReadLine());
    
                            if (x == 0)
                            {
                                Console.ForegroundColor = ConsoleColor.Red;
                                Console.WriteLine("\nCantidad no valida");
                            }
    
                            if (codigo == 6 && x > 2)
                            {
                                Console.ForegroundColor = ConsoleColor.Red;
                                Console.WriteLine("\nSolo 2 Harinas Por Persona");
                            }
    
                        } while (codigo == 6 && x > 2);
    
                    } while (x == 0);
    
                    iva = precios[codigo] * 0.12;
    
                    Console.ForegroundColor = ConsoleColor.Red;
                    Console.WriteLine("\nIVA " + iva + "Bsf" + " - Precio del producto + IVA " + (iva + precios[codigo]) + "Bsf");
                    Console.WriteLine("\nTotal IVA " + iva * x + " - Total a Pagar por su producto " + ((iva * x) + (precios[codigo] * x)));
                    n += iva * x;
                    m += precios[codigo] * x;
    
                    //Suma los totales de cantidad de producto vendido
                    for (int i = 0; i < c.GetLength(0); i++)
                    {
                        if (i == codigo)
                        {
                            c[i, 1] = c[i, 1] + x;
                        }
    
                    }
    
                    Console.ForegroundColor = ConsoleColor.Cyan;
                    Console.Write("\nPrecione La tecla S para Comprar otro producto o N para Finalizar Compra ");
                    k = char.Parse(Console.ReadLine());
    
                } while (k == 's');
    
                Console.ForegroundColor = ConsoleColor.Red;
                Console.Write("\nTotal IVA Facturado = " + n + "Bsf");
                Console.Write("\tTotal Compras del Día = " + (m + n) + "Bsf\n");
    
                // Imprime la cantidad de producto comprado
    
                Console.Write("\tListado de producto comprado:");
                for (int i = 0; i < c.GetLength(0); i++)
                {
                    Console.Write("\n" +productos[i] + " = " + c[i,1]);
                }
    
                Console.ReadKey();
            }
        }
    }

    jueves, 9 de marzo de 2017 8:12