Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: t4n07 en 28 Junio 2016, 19:54 pm



Título: Ayuda Ejercicio C++ sin usar arreglos
Publicado por: t4n07 en 28 Junio 2016, 19:54 pm
i???


Título: Re: Ayuda Ejercicio C++ sin usar arreglos
Publicado por: MAFUS en 28 Junio 2016, 20:35 pm
No se necesitan arrays para esto:
(a) es una suma de todas las entradas y una multiplicación al acabar de entrar todos los datos.
(b) es una comparación de los diferentes ingresos que se van añadiendo guardando la hora en el mismo sitio cada vez que se encuentre la mayor cuantía.
(c) es una comparación entre dos horarios, si el anterior es mayor que el actual, supongo, se descarta dicha factura (y te quedas con los datos anteriores)
(d) Supongo que irás guardando en sitios diferentes, según vendedor, lo que han vendido. Al final de todo solo debes comparar entre los tres y dar el nombre del que menos ha vendido.

Como ves todo son trabajos con variables escalares.


Título: Re: Ayuda Ejercicio C++ sin usar arreglos
Publicado por: t4n07 en 28 Junio 2016, 20:44 pm
Hola gracias por la respuesta hasta ahora lo que no puedo resolver es la parte "B y C"
este es el codigo de lo que tengo:


Código:
#include<iostream>
using namespace std;

int main (int argc, char *argv[]) {
int monto_factura=0;
int hora_factura;
int numero_vendedor;
int total_vendido=0;
int total_v_1=0;
int total_v_2=0;
int total_v_3=0;
int hora_mayor;
int hora;
int minuto;
int segundo;
while (monto_factura==0)
{
cout<<("ingrese monto_factura\n");
cin>> monto_factura;
if (monto_factura<1) {
break;
}
total_vendido=total_vendido +monto_factura;
cout <<"\n";
while (numero_vendedor <1 || numero_vendedor>3){
cout<<("ingrese numero de vendedor \n1 Primer venderor \n2 Segundo Vendedor \n3 Tercer Vendedor\n");
cin>> numero_vendedor;
}
if (numero_vendedor==1){
total_v_1=total_v_1+monto_factura;
}
else if (numero_vendedor==2) {
total_v_2=total_v_2+monto_factura;
}
else if (numero_vendedor==3) {
total_v_3=total_v_3+monto_factura;
}
numero_vendedor=0;
cout <<"\n";
while(hora_factura<99999 || hora_factura>999999){
cout<<("ingrese hora de la factura ");
cin>> hora_factura;
hora=hora_factura/10000;
minuto = (hora_factura%10000)/100;
segundo=hora_factura%100;
if ((hora<0||hora>24)||(minuto<0||minuto>60)||(segundo<0||segundo>60) )  {
cout<<("Hora/Minuto/segundo incorrecto, por favor verifique\n");
hora_factura=1;
}
}
monto_factura=0;
hora_factura=0;
}
//cout<<"la cantidad total es = prueba";
cout<<"el total de IIBB es = " <<total_vendido*0.3<<"\n";
cout<<"el vendedor 1 vendio "<<total_v_1<<"\n"<<"el vendedor 2 vendio "<<total_v_2<<"\n"<<"el vendedor 3 vendio "<<total_v_3<<"\n";
//si la venta de los vendedores es la mismatch
if (total_v_1==total_v_2 && total_v_2==total_v_3) {
cout<<"todos los vendedores vendieron el importe de "<<total_v_1 <<" por lo tanto no hay vendedor minimo";
}
//si la venta del vendedor 1 es la mayor
if (total_v_1>total_v_2 && total_v_1> total_v_3)  {
if (total_v_2>total_v_3){
cout<<"el vendedor 3 fue el que menos vendio con una venta de "<<total_v_3;
} else if (total_v_2<total_v_3){
cout<<"el vendedor 2 fue el que menos vendio con una venta de "<<total_v_2;
} else {
cout<<"el vendedor 2 y el vendedor 3 tiene la venta minima de  "<<total_v_2;
};
}
//si la venta del vendedor 2 es la mayor
if (total_v_2>total_v_1 && total_v_2> total_v_3)  {
if (total_v_1>total_v_3){
cout<<"el vendedor 3 fue el que menos vendio con una venta de "<<total_v_3;
} else if (total_v_1<total_v_3){
cout<<"el vendedor 1 fue el que menos vendio con una venta de "<<total_v_1;
} else {
cout<<"el vendedor 1 y el vendedor 3 tiene la venta minima de  "<<total_v_3;
};
}
//si la venta del vendedor 3 es la mayor
if (total_v_3>total_v_1 && total_v_3> total_v_2)  {
if (total_v_1>total_v_2){
cout<<"el vendedor 2 fue el que menos vendio con una venta de "<<total_v_2;
} else if (total_v_1<total_v_2){
cout<<"el vendedor 1 fue el que menos vendio con una venta de "<<total_v_1;
} else {
cout<<"el vendedor 1 y el vendedor 2 tiene la venta minima de  "<<total_v_2;
};
}
return 0;
}

Me podrias ayudar con esos dos items? gracias!


Título: Re: Ayuda Ejercicio C++ sin usar arreglos
Publicado por: MAFUS en 28 Junio 2016, 21:58 pm
Claro.
Caso B:
Código:
si ingreso_actual > ingreso_anterior
    hora_mayor_ingreso = hora_actual
    ingreso_anterior = ingreso_actual
fin si

Caso C:
Código:
si hora_anterior < hora_actual
    computar_la_factura
fin si