Pues que tienes un lío de llaves impresionante.
Tabula código tal que así y se verá mejor:
Código C++:
Ver original#include <iostream>
#include <string.h>
using namespace std;
int main()
{
int i,j,N,opc;
int tmes[12];
int MP[N][12];
int matriz[N][12];
int ventas[N];
int mayor, mostrar, pre;
string meses[12]= {"Ene", "Feb", "Mar", "Abr", "May", "Jun", "Jul", "Ago", "Sep", "Oct", "Nov", "Dic"};
float pro_mes, acum, d1, d2, d3, total;
for (i=0; i<12; i++) tmes[i]=0;
for (i=0; i<N; i++) ventas[i]=0;
do
{
cout << "Numero de productos a ingresar: ";
cin >> N;
}
while (N<2);
string pro[N];
for (i=0; i<N; i++)
{
cout << "Ingrese el nombre del producto ["<<(i+1)<<"]: ";
cin >> pro[i];
}//for
bool aux = false;
do //Menu
{
cout << "Menu de opciones" << endl << endl;
cout << " 0. Salir del sistema" << endl;
cout << " 1. Ingresar datos por teclado" << endl;
cout << " 2. Mostrar tabla de inventario y tabla de precios" << endl;
cout << " 3. Total de ventas de cada producto" << endl;
cout << " 4. Total de ventas por mes" << endl;
cout << " 5. Producto mas vendido por mes" << endl;
cout << " 6. Nombre, mes y cantidad de producto mas vendido" << endl;
cout << " 7. Porcentaje de producto mas vendido por cada mes" << endl;
cout << " 8. Porcentaje vendido de cada producto" << endl;
cout << " 9. Ganancias totales y deducciones" << endl;
cout << "Escoja una opcion:[ ]\b\b\b" ;
cin >> opc;
switch(opc)
{
case 1:
do
{
cout << "Ingrese costo del primer producto: ";
cin >> pre;
}
while(pre <= 0);
for(i=0; i<N; i++)
for(j=0; j<12; j++)
{
do
{
cout << "Ingrese la venta del mes "<<meses[j]<<" del producto "<<pro[i]<<" = ";
cin >> matriz[i][j];
}
while(matriz[i][j]<0);
}//for
aux = true;
break;
case 2:
if (aux)
{
cout << "1. Tabla de precios" << endl;
cout << "2. Tabla de productos" << endl << endl;
cout << "Seleccione su opcion[ ]\b\b\b";
cin >> mostrar;
acum = pre;
if(mostrar == 1)
{
for (i=0; i<N; i++)
{
cout << "\t" << pro[i];
}//for
cout << endl;
for(i=0; i<N; i++)
{
cout << "\t" << acum;
acum = acum + 15;
}//for
cout << endl;
}//if
if(mostrar == 2)
{
for(j=0; j<6; j++)
{
cout << "\t" << meses[j];
}//for
cout << endl;
for (i=0; i<N; i++)
{
cout << pro[i];
for (j=0; j<6; j++)
{
cout << "\t" << matriz[i][j];
}//for
cout << endl;
}//for
for (j=6; j<12; j++)
{
cout << "\t" << meses[j];
}//for
cout << endl;
for (i=0; i<N; i++)
{
cout << pro[i];
for (j=6; j<12; j++)
{
cout << "\t" << matriz[i][j];
}//for
cout << endl;
}//for
}//if
}//if
else
cout << "Debe ingresar datos."<<endl<<endl;
break;
case 3:
if (aux)
{
for(i=0; i<N; i++)
for(j=0; j<12; j++)
{
ventas[i] = ventas[i] + matriz[i][j];
}//for
for(i=0; i<N; i++)
cout << "La venta del producto "<<pro[i]<<" es: " << ventas[i] << endl;
}//if
else
cout << "Debe ingresar datos." <<endl << endl;
break;
case 4:
if(aux)
{
for (i=0; i<12; i++)
for (j=0; j<N; j++)
{
tmes[i]= tmes[i] + matriz[j][i];
}//for
for(i=0; i<12; i++)
cout << "La venta del mes "<<meses[i]<<" es: " << tmes[i] <<endl;
}//if
else
cout << "Error! Debe ingresar datos." << endl << endl;
break;
case 5:
break;
case 6:
break;
case 7:
{
for (j=0; j<12; j++)
{
for (i=0; i<N; i++)
{
tmes[j] = tmes[j] + matriz[i][j];
}//for
acum = acum + tmes[j];
}//for
for (j=0; j<12; j++)
{
pro_mes = ((tmes[j]/acum)*100);
cout << "El porcentaje en el mes "<<meses[j]<<" es "<<pro_mes<<"%"<< endl << endl;
}//for
break;
case 8:
{
acum = 0;
for (i=0; i<N; i++)
{
for (j=0; j<12; j++)
{
ventas[i] = ventas[i] + matriz[i][j];
}//for
acum = acum + ventas[i];
}//for
for (i=0; i<N; i++)
{
pro_mes = ((ventas[i]/acum)*100);
cout << "El porcentaje del producto "<<pro[i]<<" es "<<pro_mes<<"%"<< endl <<endl;
}//for
break;
case 9:
{
for (j=0; j<12; j++)
{
total = 0;
for (i=0; i<N; i++)
{
pre = pre + 15;
total = total + (pre*matriz[i][j]);
}//for
d1 = (total*0.15);
d2 = (total*0.16);
d3 = (total*0.215);
cout << "Las ganancias en el mes "<<meses[j]<<" son: "<<(total-d1-d2-d3)<<endl;
cout << "Las deducciones por servicio en el mes "<<meses[j]<<" son: "<<d1<<endl;
cout << "Las deducciones por impuestos en el mes "<<meses[j]<<" son: "<<d2<<endl;
cout << "Las deducciones por pagos a los empleados en el mes "<<meses[j]<<" son: "<<d3<<endl;
}//for
break;
}//switch
}
while (opc !=0);
}
Usa funciones, comenta las llaves... Tienes que ganar en claridad de código ;)