• Sábado 21 de Septiembre de 2024, 16:44

Autor Tema:  Como hacerlo?  (Leído 1372 veces)

alejandra rodriguez

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
Como hacerlo?
« en: Viernes 20 de Mayo de 2011, 03:54 »
0
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);