#include <iostream>
using namespace std;
int main(){
float monto;
int codigo;
int numVentas=0;
int *vecCodigos = new int[numVentas+1];
float *vecMontos = new float[numVentas+1];
while (1){
// ingreso de datos
cout<<"Ingrese monto: ";cin>>monto;
if (monto<0) break;
cout<<"Ingrese codigo del vendedor:";cin>>codigo;
vecMontos[numVentas]=monto;
vecCodigos[numVentas]=codigo;
numVentas++;
// reasignacion de memoria
int *p = new int[numVentas+1];
float *q = new float[numVentas+1];
for(int i=0; i<numVentas; i++){
p[i]=vecCodigos[i];
q[i]=vecMontos[i];
}
vecCodigos=p; vecMontos=q;
}
// totalizamos las ventas por codigo de vendedor
const int numVendedores=99;
float totalVentas[numVendedores]={0.0};
for(int i=0;i<numVentas;i++){
int cod =vecCodigos[i];
totalVentas[cod-1]+=vecMontos[i];
}
// calculamos el promedio de ventas
float promVentas=0.0;
for(int i=0;i<numVentas;i++){
promVentas += vecMontos[i];
}
promVentas=promVentas/numVentas;
// buscamos cuantos vendedores superan el promedio
int numVendPromedio=0;
for(int i=0;i<numVendedores;i++){
if (totalVentas[i]>promVentas){
numVendPromedio++;
}
}
// creamos el arreglo de vendedores con ventas mayores al promedio
int *vecVendPromedio = new int[numVendPromedio];
// recorremos el arreglo de ventas por vendedor
for(int i=0,j=0;i<numVendedores;i++){
if (totalVentas[i]>promVentas){
vecVendPromedio[j++]=i+1;
}
}
// imprimimos los codigos de los vendedores con ventas superioes al promedio
cout<<"Monto promedio: "<<promVentas<<endl;
for(int i=0;i<numVendPromedio;i++){
cout<<"Vendedor "<<vecVendPromedio[i]<<" "
<<"Monto "<< totalVentas[vecVendPromedio[i]-1]<<endl;
}
cin.get();
}