Programas en C++ para Calcular Ventas de Pizzas y Costos de Envío Internacional

Clasificado en Informática

Escrito el en español con un tamaño de 5,98 KB

Programas en C++: Ventas de Pizza y Costos de Envío

A continuación se presentan dos programas en C++ desarrollados para resolver problemas prácticos de control de ventas y cálculo de envíos internacionales. Ambos ejemplos utilizan funciones, estructuras condicionales y bucles para gestionar la información de manera eficiente.

1. Control de Ventas de Pizzas

Este programa permite registrar la venta de pizzas enteras, medias pizzas y cuartas partes, calculando las ganancias del día y las pizzas restantes disponibles.

Características principales

  • Cálculo del precio por porción mediante la función calcularPrecio().
  • Menú interactivo con opciones de venta.
  • Control de pizzas vendidas y ganancias acumuladas.
  • Cálculo final de inventario disponible.

Código fuente

#include <iostream>

using namespace std;

// Función para calcular el precio de la pizza según la porción
float calcularPrecio(int porciones) {
    float precioPorcion = 65.0;
    return precioPorcion / porciones;
}

int main() {
    int pizzasTotales;
    cout << "Ingrese la cantidad total de pizzas enteras disponibles para la venta: ";
    cin >> pizzasTotales;

    int pizzasVendidas = 0;
    float gananciasDia = 0.0;

    char opcion;
    do {
        cout << "\n--- Menú ---" << endl;
        cout << "1. Comprar pizza entera" << endl;
        cout << "2. Comprar media pizza" << endl;
        cout << "3. Comprar cuarta parte de pizza" << endl;
        cout << "4. Terminar el día" << endl;
        cout << "Seleccione una opción: ";
        cin >> opcion;

        switch(opcion) {
            case '1':
                gananciasDia += 65.0;
                pizzasVendidas++;
                break;
            case '2':
                gananciasDia += calcularPrecio(2);
                pizzasVendidas += 2;
                break;
            case '3':
                gananciasDia += calcularPrecio(4);
                pizzasVendidas += 4;
                break;
            case '4':
                cout << "Terminando el día..." << endl;
                break;
            default:
                cout << "Opción no válida. Por favor, seleccione una opción válida." << endl;
        }

    } while (opcion != '4');

    cout << "Se vendieron " << pizzasVendidas << " porciones en total." << endl;
    cout << "Se ganaron " << gananciasDia << " Bs en el día." << endl;

    // Calcular pizzas restantes
    int pizzasRestantes = pizzasTotales - pizzasVendidas;
    cout << "Quedan " << pizzasRestantes << " pizzas enteras disponibles para la venta." << endl;

    return 0;
}

2. Cálculo de Costos de Envío Internacional

Este segundo programa calcula el costo de envío de paquetes desde Bolivia hacia Argentina y Brasil, aplicando tarifas diferenciadas según el peso del paquete.

Tarifas aplicadas

  • Hacia Argentina: de 1 a 3 kg (55 Bs/kg), de 4 a 10 kg (50 Bs/kg), más de 10 kg (48 Bs/kg). Menos de 1 kg: tarifa fija de 25 Bs.
  • Hacia Brasil: de 1 a 3 kg (60 Bs/kg), de 4 a 10 kg (55 Bs/kg), más de 10 kg (50 Bs/kg). Menos de 1 kg: tarifa fija de 30 Bs.

Código fuente

#include <iostream>

using namespace std;

// Función para calcular el costo del envío de un paquete de Bolivia a Argentina
float costoEnvioArgentina(float peso) {
    if (peso >= 1 && peso <= 3) {
        return peso * 55;
    } else if (peso >= 4 && peso <= 10) {
        return peso * 50;
    } else if (peso > 10) {
        return peso * 48;
    } else { // Si pesa menos de 1 kilo
        return 25;
    }
}

// Función para calcular el costo del envío de un paquete de Bolivia a Brasil
float costoEnvioBrasil(float peso) {
    if (peso >= 1 && peso <= 3) {
        return peso * 60;
    } else if (peso >= 4 && peso <= 10) {
        return peso * 55;
    } else if (peso > 10) {
        return peso * 50;
    } else { // Si pesa menos de 1 kilo
        return 30;
    }
}

int main() {
    int enviosArgentina = 0;
    int enviosBrasil = 0;
    float totalCobrado = 0.0;

    char continuar;
    do {
        char destino;
        float peso;
        cout << "Ingrese el destino del envío (A para Argentina, B para Brasil): ";
        cin >> destino;
        cout << "Ingrese el peso del paquete en kilos: ";
        cin >> peso;

        float costoEnvio;
        if (destino == 'A' || destino == 'a') {
            costoEnvio = costoEnvioArgentina(peso);
            enviosArgentina++;
        } else if (destino == 'B' || destino == 'b') {
            costoEnvio = costoEnvioBrasil(peso);
            enviosBrasil++;
        } else {
            cout << "Destino no válido. Intente de nuevo." << endl;
            continue;
        }

        cout << "El costo del envío es: " << costoEnvio << " Bs." << endl;
        totalCobrado += costoEnvio;

        cout << "¿Desea ingresar otro envío? (S/N): ";
        cin >> continuar;
    } while (continuar == 'S' || continuar == 's');

    cout << "Se realizaron " << enviosArgentina << " envíos a Argentina." << endl;
    cout << "Se realizaron " << enviosBrasil << " envíos a Brasil." << endl;
    cout << "El total cobrado en el día es: " << totalCobrado << " Bs." << endl;

    return 0;
}

Conclusión

Estos ejemplos demuestran cómo aplicar conceptos fundamentales de C++, como funciones, estructuras if-else, switch y bucles do-while, en la resolución de problemas cotidianos de comercio y logística.

Entradas relacionadas: