Dev - C++ - proyecto parcial III

 
Vista:

proyecto parcial III

Publicado por luis roberto rios tisnado (1 intervención) el 31/05/2023 16:24:23
#include <iostream>
#include <iomanip>
using namespace std;

const int NUM_MEDICAMENTOS = 5;

struct Medicamento {
int clave;
int unidades;
float precio;
};

// Función para obtener el índice de un medicamento en base a su clave
int obtenerIndiceMedicamento(Medicamento medicamentos[], int clave) {
for (int i = 0; i < NUM_MEDICAMENTOS; i++) {
if (medicamentos[i].clave == clave) {
return i;
}
}
return -1; // Si no se encuentra, devuelve -1
}

// Función para realizar la venta de un medicamento
void realizarVenta(Medicamento medicamentos[], int clave, int cantidad, float& totalVenta) {
int indice = obtenerIndiceMedicamento(medicamentos, clave);
if (indice != -1) {
if (medicamentos[indice].unidades >= cantidad) {
float precioVenta = medicamentos[indice].precio * cantidad;
totalVenta += precioVenta;
medicamentos[indice].unidades -= cantidad;
cout << "Venta realizada. Total: $" << precioVenta << endl;
} else {
cout << "No hay suficientes unidades disponibles para la venta." << endl;
}
} else {
cout << "Medicamento no encontrado." << endl;
}
}

// Función para mostrar el inventario de medicamentos
void mostrarInventario(Medicamento medicamentos[]) {
cout << "Inventario actualizado:" << endl;
cout << "Clave\tUnidades\tPrecio" << endl;
for (int i = 0; i < NUM_MEDICAMENTOS; i++) {
cout << medicamentos[i].clave << "\t" << medicamentos[i].unidades << "\t\t$" << medicamentos[i].precio << endl;
}
}

int main() {
Medicamento medicamentos[NUM_MEDICAMENTOS];
float totalVenta = 0.0;

// Alta de medicamentos
medicamentos[0] = {123, 50, 10.5};
medicamentos[1] = {234, 100, 8.75};
medicamentos[2] = {345, 75, 12.25};
medicamentos[3] = {456, 200, 15.0};
medicamentos[4] = {567, 150, 9.99};

string nombreFarmacia;
cout << "Nombre de la farmacia: ";
getline(cin, nombreFarmacia);

int claveMedicamento, cantidad;
cout << "Clave del medicamento solicitado: ";
cin >> claveMedicamento;
cout << "Cantidad de unidades solicitadas: ";
cin >> cantidad;

realizarVenta(medicamentos, claveMedicamento, cantidad, totalVenta);
mostrarInventario(medicamentos);
cout << "Total de la venta: $" << totalVenta << endl;

return 0;
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder