• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

kaskinho

open file java

4 mensagens neste tópico

ola a tds

eu sou nova na programaçao e surgiu uma duvida, sei k e um bocado estranha mas nao consigo sair dela

ou seja:

eu estou a realizar um programa para gestao de votos em tds os did«stritos do pais

neste programa sou obrigada a utilizar um ficheiro ja existente chamado"distritos.txt", mas o meu programa, sempre que o mando executar ele nao encontra o ficheiro, embora eu tenha la o ficheioro com o nome e xtensao correctas!

alguem sabe a causa deste problema

????????

bigada

kaskito

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
package tp_final;

import java.io.File;
import java.io.FileNotFoundException;
import java.util.Formatter;
import java.util.Scanner;

public class Main {

   public static void main(String[] args)
   {
        int e;
        int d;
        int a = 0;
        int k = 0;
        int c = 0;
        int l = 0;
        int [][] mat_aux=new int [17][9];
        String [][] mat= new String[l][c];
        String [] votos=new String[a];
        String [] distritos=new String[k];
        Leitura(mat,votos,distritos,mat_aux);
        TotalVotantesDistrito(mat_aux,l,c);
        PartidoMaisVotos(mat_aux,l,c);
        DistritoPartidoMaisVotos(mat_aux,l,c);
        Ordenacao(mat_aux,l,c);
        Actualizar(mat_aux,l,c);
        Email(distritos,l,c);
        GuardarInformaçao(mat_aux, distritos, votos, l,c);
   }


   public static void Leitura(String mat[][], String votos[], String distritos[], int mat_aux[][])
   {
       int e = 0;
        int d = 0;
        int k = 0;
       
       int a = 0;
       Scanner ler=null;
       String linha;
       String[] aux= new String[9];
       int i = 0 ,j = 0;
       try{
           ler = NewScanner(new File("distritos.txt"));
           int nlinhas=0;
           while(ler.hasNext())
       {
           
           linha=ler.nextLine();
           aux=linha.split("|");
           for (i=0;i<9;i++)
               mat[nlinhas][i+1]=aux[j];
           nlinhas++;
       }
      
       ler.close();
       } catch (Exception ex){
           System.out.println("ficheiro nao existente");
           System.exit(0);
       }
       int nlinhas=0;
      
       for(i=0;i<=19;i++)
       {
           distritos[k]=mat[0][j];
       }
   
        for(j=0;j<9;j++)
        {
           votos[a]=mat[i][0];
        }
   
        for(i=1;i<=19;i++)
        {
           for(j=1;j<=9;j++)
           {
              mat_aux[d][e]=Integer.parseInt(mat[i][j]); 
           }
        }
   
   
   
   
   
   }

  public static void TotalVotantesDistrito(int mat_aux[][],int l, int c)
  {
       int i,j ;
       int soma;

       for (i=1;i<=18;i++)
       {
           soma=0;
           for(j=3;j<=7;j++)
           {
              soma=soma+mat_aux[1][j];
           }
      
         mat_aux[i][8]=soma;
      
        }
  }
       
   public static void PartidoMaisVotos(int mat_aux[][],int l, int c)
   {
        int maior;
      int[]aux=new int[5];
       int i,j,k = 0, pos = 0;
       int soma;
       for(i=1;i<=17;i++)
       {
             soma=0;
           for (j=4;j<=4;j++)
           {
                     soma=soma+mat_aux[i][j];
                     aux[k]=soma;
           }
       }
   
        for(k=0;k<=5;k++)
        {
           maior=aux[k];
           if(maior<aux[k+1])
           {
               maior=aux[k+1];
               pos=k+1;
           }
        }
       if(pos==4)
           System.out.println("O partido com mais votos é: ps");
       else
           if(pos==5)
               
           System.out.println("O partido com mais votos é: psd");
       else
           if(pos==6)
               
           System.out.println("O partido com mais votos é: cdu");
       else
           if(pos==7)
               
           System.out.println("O partido com mais votos é: pp");
       else
      
           System.out.println("O partido com mais votos é: be ");
   
   }
   

   public static void DistritoPartidoMaisVotos(int mat_aux[][], int l, int c)
   {
       int i,pos = 0,pos2 = 0;
       int maior;
       int j;
       int k=0;
       int[]aux=new int[18];
       for(i=1;i<=9;i++)
       {
           for(j=4;j<=18;j++)
           {
             maior=mat_aux[i][j];
             if(maior<mat_aux[i][j+1])
             {
                 maior=mat_aux[i][j+1];
                 aux[k]=maior;
                 pos2=j;
                 pos=i;
          }
        }
       }
          if(pos2==1)
          System.out.println("O partido com mais votos no distrito de Braga foi: ");
          else
              if(pos==2)
           System.out.println("O partido com mais votos no distrito de Viana foi:");
       else
           if(pos==3)
           System.out.println("O partido com mais votos no distrito de Vila Real foi: ");
       else   
           if(pos==4)
           System.out.println("O partido com mais votos no distrito de Bragança foi: ");
       else   
           if(pos==5)
           System.out.println("O partido com mais votos no distrito de Aveiro foi: ");
       else   
           if(pos==6)
           System.out.println("O partido com mais votos no distrito de Coimbra foi: ");
       else   
           if(pos==7)
           System.out.println("O partido com mais votos no distrito de Leiria foi:  ");
       else   
           if(pos==8)
           System.out.println("O partido com mais votos no distrito de Castelo Branco foi: ");
       else   
           if(pos==9)
           System.out.println("O partido com mais votos no distrito de Lisboa foi: ");
       else 
           if(pos==10)
           System.out.println("O partido com mais votos no distrito de Santarem foi: ");
       else   
           if(pos==11)
           System.out.println("O partido com mais votos no distrito de Portalegre foi:");
       else  
           if(pos==12)
           System.out.println("O partido com mais votos no distrito de Evora foi: ");
       else  
           if(pos==13)
           System.out.println("O partido com mais votos no distrito de Setubal foi:");
       else   
           if(pos==14)
           System.out.println("O partido com mais votos no distrito de Beja foi: ");
       else   
           if(pos==15)
           System.out.println("O partido com mais votos no distrito de Faro foi: ");
       else 
           if(pos==16)
           System.out.println("O partido com mais votos no distrito da Guarda foi: ");
       else   
           if(pos==17)
           System.out.println("O  partido com mais votos no distrito de Viseu foi:  ");
       else
           System.out.println("O partido com mais votos no distrito do Porto foi: ");
        
           if(pos==4)
           System.out.println("ps");
       else
           if(pos==5)
               
           System.out.println(" psd");
       else
           if(pos==6)
               
           System.out.println(" cdu");
       else
           if(pos==7)
               
           System.out.println(" pp");
       else
      
           System.out.println(" be ");
   }

   public static void Ordenacao( int mat_aux[][],int l, int c)
  {
       int pp=0,be=0,cdu=0,psd=0,ps = 0;
       int inscritos=0, i, j;
       
            for(i=1;i<=l-1;i++)
            {
                for(j=1;j<=1;j++)
                {
                 inscritos=inscritos+mat_aux[i][j];
                }
            }

             for(j=1;j<=c-1;j++)
            {
                for(i=1;i<=1;i++)
                {
                   ps=ps+mat_aux[j][i];
                    psd=psd+mat_aux[j+1][i];
                     cdu=cdu+mat_aux[j+2][i];
                      be=be+mat_aux[j+3][i];

                      if(ps>psd && ps>cdu && ps>pp && ps>be)
                          System.out.println("ps");
                      else
                          if(psd>cdu && psd>pp && psd>be)
                             System.out.println("psd");
                          else
                              if(cdu>pp && cdu>be)
                                  System.out.println("cdu");
                              else
                                  if(pp>be)
                                      System.out.println("pp");
                                  else
                                      System.out.println("be");

                }
             }


        }




        public static void Actualizar(int mat_aux[][], int l, int c)
        {
       int a,b,i,j;
        int pos;
        
                       Scanner entrada=new Scanner(System.in);
                       System.out.println("INTRODUZIR AS COORDENADAS I,J DA POSIÇAO QUE DESEJA ACTUALIZAR: ");
                       System.out.println(" COORDENADA I: ");
                       i=entrada.nextInt();
                       System.out.println(" COORDENADA J: ");
                       j=entrada.nextInt();
                       System.out.println("INTRODUZA O NOVO VALOR CORRESPONDENTE A POSIÇAO INSERIDA : ");
                       pos=entrada.nextInt();
              for(i=0;i<=l-1;i++)
            {
                for(j=0;j<=c-1;j++)
                {
        
        mat_aux[i][j]=pos;
     }

              }}
     public static void Email(String distritos[],int l, int c)
      {
        String[] aux=new String[4];
        int i;
        do{
        for(i=0;i<18;i++)
        {
            aux[0]=distritos[i];
            aux[1]=distritos[i+1];
            aux[2]=distritos[i+16];
            aux[3]=distritos[i+17];
        }      
        System.out.println(aux[0] + aux[1]+ aux[2]+ aux[3] + "@ine.pt" );
     }while(i<=17);
     }
       
     public static void GuardarInformaçao(int mat_aux[][],String distritos[], String votos[],int l, int c)
      {
          String distrito = null;
          String str, dados="";
          Formatter fich=null;
          int i,j = 0, pos=0; //Falta iniciar j
          
          try{
              fich=new Formatter(new File("distritos.txt"));
          }catch (FileNotFoundException ex){
              System.out.println("É IMPOSSIVEL CRIAR O FICHEIRO");
              System.exit(0);
          }
          for(i=0;i<18;i++)
          {
              switch(i)
              {
                  case 0: distrito="Braga";break;
                  case 1: distrito="Viana";break;
                  case 2: distrito="Porto";break;
                  case 3: distrito="Vila Real";break;
                  case 4: distrito="Bragança";break;
                  case 5: distrito="Aveiro";break;
                  case 6: distrito="Viseu";break;
                  case 7: distrito="Guarda";break;
                  case 8: distrito="Coimbra";break;
                  case 9: distrito="Leiria";break;
                  case 10: distrito="Castelo Branco";break;
                  case 11: distrito="Lisboa";break;
                  case 12: distrito="Santarem";break;
                  case 13: distrito="Portalegre";break;
                  case 14: distrito="Évora";break;
                  case 15: distrito="Setubal";break;
                  case 16: distrito="Beja";break;
                  case 17: distrito="Faro";break;

              }

                System.out.println("distrito: "+distrito);
                str = distrito + "|" + mat_aux[i][j];
                fich.format(str+"%n");
              }
          fich.close();
    
   if(pos==1)
           System.out.println("O distrito com mais votos é: Braga ");
       else   
           if(pos==2)
           System.out.println("O distrito com mais votos é: Viana ");
       else
           if(pos==3)
           System.out.println("O distrito com mais votos é: Vila Real ");
       else   
           if(pos==4)
           System.out.println("O distrito com mais votos é:Bragança ");
       else   
           if(pos==5)
           System.out.println("O distrito com mais votos é: Aveiro ");
       else   
           if(pos==6)
           System.out.println("O distrito com mais votos é:Coimbra ");
       else   
           if(pos==7)
           System.out.println("O distrito com mais votos é: Leiria ");
       else   
           if(pos==8)
           System.out.println("O distrito com mais votos é:Castelo Branco ");
       else   
           if(pos==9)
           System.out.println("O distrito com mais votos é:Lisboa ");
       else 
           if(pos==10)
           System.out.println("O distrito com mais votos é: Santarem");
       else
           if(pos==11)
           System.out.println("O distrito com mais votos é: Portalegre");
       else  
           if(pos==12)
           System.out.println("O distrito com mais votos é:Evora  ");
       else  
           if(pos==13)
           System.out.println("O distrito com mais votos é: Setubal");
       else   
           if(pos==14)
           System.out.println("O distrito com mais votos é:Beja ");
       else   
           if(pos==15)
           System.out.println("O distrito com mais votos é: Faro");
       else 
           if(pos==16)
           System.out.println("O distrito com mais votos é:Guarda ");
       else   
           if(pos==17)
           System.out.println("O distrito com mais votos é:Viseu ");
       else
           System.out.println("O distrito com mais votos é:Porto ");
  }

    private static Scanner NewScanner(File file) {
        return null;
    }
}

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Para esse ficheiro abrir correctamente tem de estar colocado na pasta de execucao do programa. Pelo menos da forma como estas a executar.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora