Dev - C++ - Una fonda requiere llevar un control de la cantidad total de platos vendidos

 
Vista:

Una fonda requiere llevar un control de la cantidad total de platos vendidos

Publicado por ana marquez (1 intervención) el 18/10/2019 06:35:26
Una fonda requiere llevar un control de la cantidad total de platos vendidos y los ingresos netos diarios generados en cada una de sus categorías (Desayunos, almuerzos y comidas rápidas), para ello es necesario tener en cuenta:
Los precios de los productos ingresados en cada categoría deben de estar en los siguientes rangos:

Desayunos: 5.00 y 10.000.
Almuerzos: 8.000 y 25.000
Comidas Rápidas: 10.000 y 30.000

Al finalizar, el programa debe de mostrar un consolidado de la cantidad total de los productos vendidos por cada categoría, un total de ventas por categoría y un total global de las ventas del día.
Aclaración: La clave del ejercicio esta en primero ubicar al usuario dentro de una categoría y luego si validar los rangos (de lo contrario los rangos se cruzarían).
Es necesario validar que los datos que está ingresando el usuario por consola se ajusten a los rangos y categorías solicitados en el ejercicio
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
-1
Responder
Imágen de perfil de Alfil
Val: 4.344
Oro
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Una fonda requiere llevar un control de la cantidad total de platos vendidos

Publicado por Alfil (1444 intervenciones) el 18/10/2019 08:33:00
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
#include <iostream>
 
using namespace std;
 
struct Pedido{
    int desayuno;
    int almuerzo;
    int comida;
    int cantDesayuno;
    int cantAlmuerzo;
    int cantComida;
    int total;
};
 
void menu();
int precioMenu( int min, int max, int &cantidad );
void imprimir( Pedido p );
 
int main()
{
    Pedido p = { 0 };
    char opcion;
 
    do{
        menu();
        cin >> opcion;
 
        switch( opcion ){
 
            case '1':
                p.desayuno += precioMenu( 500, 10000, p.cantDesayuno );
                p.total += p.cantDesayuno;
                break;
 
            case '2':
                p.almuerzo += precioMenu( 8000, 25000, p.cantAlmuerzo );
                p.total += p.cantAlmuerzo;
                break;
 
            case '3':
                p.comida += precioMenu( 10000, 30000, p.cantComida );
                p.total += p.cantComida;
                break;
 
            case '4':
                cout << "\n\nFIN DEL PROGRAMA\n" << endl;
                break;
 
            default:
                cout << "\n\nOPCION INCORRECTA\n\n";
                break;
        }
    } while( opcion != '4' );
 
    imprimir( p );
 
    return 0;
}
 
void menu()
{
    cout << "\n     PEDIDOS "
         << "\n===================="
         << "\n1.- Desayuno ... [1]"
         << "\n2.- Almuerzo ... [2]"
         << "\n3.- Comida ..... [3]"
         << "\n4.- Terminar ... [4]"
         << "\n===================="
         << "\nOPCION (1 - 4): ";
}
 
int precioMenu( int min, int max, int &cantidad )
{
    int precio;
 
    cout << "\nCantidad: ";
    cin >> cantidad;
 
    do{
        cout << "Precio unidad: ";
        cin >> precio;
 
        if( precio < min || precio > max )
            cout << "\n\nPRECIO FUERA DE RANGO"
                 << "\nPrecio minimo: " << min
                 << "\nPrecio maximo: " << max
                 << "\n\n";
 
    }while( precio < min || precio > max );
 
    cout << "\nImporte: " << precio * cantidad << endl;
 
    return precio * cantidad;
}
 
void imprimir( Pedido p )
{
    int totalVenta = p.desayuno + p.almuerzo + p.comida;
 
    cout << "\n\nTotal productos vendidos:   " << p.total
         << "\nTotal desayunos vendidos    " << p.cantDesayuno
         << "\nTotal almuerzos vendidos:   " << p.cantAlmuerzo
         << "\nTotal comidas vendidas:     " << p.cantComida
         << "\n\nTotal venta global:         " << totalVenta
         << "\nTotal venta desayunos:      " << p.desayuno
         << "\nTotal venta almuerzos:      " << p.almuerzo
         << "\nTotal venta comidas:        " << p.comida
         << endl;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar