1
« en: Viernes 20 de Mayo de 2011, 03:54 »
Me toca hacer un programa donde me muestre ciudad con la mayor venta con su respectiva venta y el vendedor que la realizo, Estos valores toca sacarlos de de tres archivos 1. Vendedores.txt (arreglo) 2. Vendedor_Cuidad.txt ( Matriz) y 3. Ventas.txt (Matriz), Este es el programa que tengo:
String cad;
String cad1;
String cad2;
int opc=0;
int nElem=0;
int nFil=0;
int nCol=0;
int colM;
int mayor;
int menor;
int colMe;
int i;
int k;
int suma []=null;
int venMayor[]=null;
int promedio[]=null;
int venTotal=0;
String vendedorMayor=null;
String vendedorMenor=null;
String ciudades[]=null;
String nomArchCiu="data\Ciudades.txt";
String venCiu [][]=null;
String nomArchVenCiu="data\Vendedor_Ciudad.txt";
String vendedores []=null;
String nomArchVen="data\Vendedores.txt";
int ventas[][]=null;
String nomArchVent="data\Ventas.txt";
File f;
FileReader fr;
BufferedReader br;
try{
nomArchCiu="data\Ciudades.txt";
f= new File(nomArchCiu);
fr= new FileReader(f);
br= new BufferedReader(fr);
cad= br.readLine();
nElem= Integer.parseInt(cad);
ciudades= new String [nElem];
for(i=0; i<nElem; i++){
ciudades=br.readLine();
}
fr.close();
nomArchVenCiu="data\Vendedor_Ciudad.txt";
f= new File(nomArchVenCiu);
fr= new FileReader(f);
br= new BufferedReader(fr);
cad= br.readLine();
nFil= Integer.parseInt(cad);
cad= br.readLine();
nCol= Integer.parseInt(cad);
venCiu= new String [nFil][nCol];
for(i=0; i<nFil; i++){
for(k=0;k<nCol; k++){
venCiu[k]=br.readLine();
}
}
fr.close ();
nomArchVen="data\Vendedores.txt";
f= new File(nomArchVen);
fr= new FileReader(f);
br= new BufferedReader(fr);
cad= br.readLine();
nElem = Integer.parseInt(cad);
vendedores = new String ;
for(i=0; i<nFil; i++){
vendedores=br.readLine();
}
fr.close ();
nomArchVent="data\Ventas.txt";
f= new File(nomArchVent);
fr= new FileReader(f);
br= new BufferedReader(fr);
cad= br.readLine();
nFil= Integer.parseInt(cad);
cad= br.readLine();
nCol= Integer.parseInt(cad);
ventas= new int [nFil][nCol];
for(i=0; i<nFil; i++){
for(k=0;k<nCol; k++){
ventas[k]=Integer.parseInt(br.readLine());
}
}
}catch(IOException ioe){
JOptionPane.showMessageDialog(null, "Lo siento, no se abrio el archivo!");
}
do{
cad1=JOptionPane.showInputDialog("MENU:nn 1.Vendedores: Mayor y menor venta por semestre.nn" +
"2.Ciudades: Mayor y menor venta por semestre.nn" +
"3.Promedio ventas de cada vendedor del semestrenn" +
"4.Vendedor con el mayor numero de ventas del mesnn" +
"5.Total venta por mes de la empresa.");
if (cad1!=null){
opc=Integer.parseInt(cad1);
switch (opc){
case 1:
if (ventas != null){
suma=new int [nFil];
for(i=0;i<nFil;i++){
for (k=0; k<nCol;k++){
suma=suma+ ventas[k];
}
}
colM=0;
colMe=0;
mayor= suma[0];
menor= suma[0];
for(i=1;i<nFil;i++){
if(suma>mayor){
mayor=suma;
colM=i;
}
if(suma<menor){
menor=suma ;
colMe=i;
}
}
if(vendedores!=null){
vendedorMayor= vendedores[colM];
vendedorMenor= vendedores[colMe];
}
JOptionPane.showMessageDialog(null, "VENDEDORES/VENTAnn1.Mayor venta semestre:nNombre: "+vendedorMayor+"nVenta: "+ mayor+
"nn2.Menor venta semestre:nNombre: "+vendedorMenor+"nVenta: "+ menor);
}
break;
case 2:
JOptionPane.showMessageDialog(null, "CIUDADES:nn1.Mayor venta semestre:n_ciudad-venta_nn2. Menor venta sememstre:n_ciduad-venta_.");
break;
case 3:
if (ventas != null){
suma=new int [nFil];
promedio= new int [nFil];
for(i=0;i<nFil;i++){
for (k=0; k<nCol;k++){
suma=suma+ ventas[k];
}
promedio= suma/nCol;
}
String promVent="PROMEDIO VENTAS:nVENDEDOR VENTASn" ;
for(i=0;i<nFil;i++){
promVent=promVent + "n"+(i+1)+". "+vendedores+" "+promedio;
}
JOptionPane.showMessageDialog(null, promVent);
}
break;
case 4:
cad2=JOptionPane.showInputDialog("Escoger mes:n1.Eneron2.Febreron3.Marzon4.Abriln5.Mayon6.Junio");
if (cad2!=null){
opc=Integer.parseInt(cad2);
if(ventas!=null){
colM=0;
k=opc;
i=0;
mayor= ventas[k];
for (i=1;i<nFil;i++){
if (ventas[k]> mayor){
mayor= ventas[k];
colM=i;
}
}
vendedorMayor=vendedores[colM];
JOptionPane.showMessageDialog(null,"VENDEDOR CON EL MAYOR NUMERO DE VENTA:nn1. Vendedor:n"+ vendedorMayor+
"nn2.Venta:n"+mayor);
}
}
break;
case 5:
if(ventas !=null){
suma= new int [nCol];
for(k=0;k<nCol;k++){
for(i=0; i<nFil;i++){
suma [k]=suma[k]+ ventas[k];
}
venTotal= venTotal + suma [k];
}
JOptionPane.showMessageDialog(null, "VENTAS:nMES VENTA" +
"n1.Enero "+suma[0]+
"n2.Febrero "+suma[1]+
"n3.Marzo "+suma[2]+
"n4.Abril "+suma[3]+
"n5.Mayo "+suma[4]+
"n6.Junio "+suma[5]+
"nnTOTAL VENTAS: "+ venTotal);
}
break;
}
}
}while (cad1!= null);