Quote Originariamente inviata da Ansharja Visualizza il messaggio
Il codice che hai inserito è incompleto, manca il metodo principale della classe (public static void main(String[] argomento))e le varie funzioni non si richiamano tra di loro, come facciamo a sapere il modo in cui volevi legarle?

Inserisci il codice completo e vediamo di darti una mano

main:

codice:
public class Main {


    public static void main(String[] args) throws IOException {
        BufferedReader input=new BufferedReader(new InputStreamReader(System.in));
        String comincia;
        int nT=0;
        comincia=input.readLine();
        while(!comincia.equals("-1"))
        {
            nT++;
            comincia=input.readLine();
            String [] array=comincia.split(" ");
            int riga=Integer.parseInt(array[0]);
            int colonna=Integer.parseInt(array[1]);
            Matrice matrice=new Matrice(riga, colonna);
            matrice.input(input);
            
            int ris=matrice.numeroTorri();
            System.out.println("result "+nT);
            System.out.println(ris);
            comincia=input.readLine();
        }


    }


}
classe Matrice:

codice:

import java.io.BufferedReader;
import java.io.Console;
import java.io.IOException;
import java.io.InputStreamReader;
import java.nio.Buffer;


public class Matrice {
    String matrice[][];
    int riga, colonna;
    int cont;


    
    
    public Matrice(int riga, int colonna) 
    {
        this.colonna=colonna;
        this.riga=riga;
        cont=0;
        matrice=new String[riga][colonna];
    }
    
    public void input(BufferedReader input) throws IOException
    {
        String array[]=new String[colonna];
        for(int i=0; i<riga; i++)
        {
            String x=input.readLine();
            array=x.split(" ");
            for(int j=0; j<colonna; j++)
            {
                matrice[i][j]=array[j];
                
            }
        }
    }
    




    public int controlloSoli()
    {
        int tot=0;
        for(int i=0; i<riga; i++)
        {
            for(int j=0; j<colonna;j++)
            {
                if(matrice[i][j].equals("*"))
                {
                    matrice[i][j]="C";
                    tot++;
                }
            }
        }
        System.out.println("il totale e"+" "+tot);
        return tot;
    }




    public int primoAngolo()
    {
        int contoPrimoAngolo=0;
    //    System.out.println("primo angolo"+ " "+contoPrimoAngolo);




        for(int i=0; i<riga;i++)
        {
            for(int j=0; j<colonna;j++)
            {
                if(matrice[i][j].equals("*"))
                {
                    if(j+1<colonna)
                    {
                        if(matrice[i][j+1].equals("*") && matrice[i][j].equals("*"))
                        {
                            contoPrimoAngolo++;
                            matrice[i][j]=matrice[i][j+1]="C";
                            System.out.println("primoangolo"+ " "+contoPrimoAngolo);
                            stampa();
                        }


                    }
                     if(i+1<riga){
                        if(matrice[i+1][j].equals("*")&& matrice[i][j].equals("*")){
                            contoPrimoAngolo++;
                            matrice[i][j]=matrice[i+1][j]="C";
                            System.out.println("primoangolo"+ " "+contoPrimoAngolo);


                        }
                    }
                }
            }
        
        }
        return contoPrimoAngolo;
    }// chiude funzione
    
    
    


    
    public void ripristina()
    {
        System.out.println("holaaaa");
        for(int i=0; i<riga; i++)
        {
            for(int j=0; j<colonna; j++)
            {
                if(matrice[i][j].equals("C"))
                {
                    matrice[i][j]="*";
                    
                }
            }
        }
    }
    
    
    
    public int secondoAngolo()
    {
        int contoSecondoAngolo=0;


        for(int i=0; i<riga;i++)
        {
            for(int j=colonna-1; j<colonna && j>=0;j--)
            {
                if(matrice[i][j].equals("*"))
                {
                    if(j+1<colonna)
                    {
                        


                        if(matrice[i][j+1].equals("*") && matrice[i][j].equals("*"))
                        {
                       
                            contoSecondoAngolo++;
                            matrice[i][j]=matrice[i][j+1]="C";
                            System.out.println("secondooooo"+ " "+contoSecondoAngolo);
                        
                            
                        }


                    }
                     if(i+1<riga)
                     {
                        if(matrice[i+1][j].equals("*")&& matrice[i][j].equals("*"))
                        {
                            contoSecondoAngolo++;
                            matrice[i][j]=matrice[i+1][j]="C";
                            System.out.println("secondoooooo"+ " "+contoSecondoAngolo);
                        }
                    }
                }
            }
        
        }
        return contoSecondoAngolo;
    }//


    public void ripristina2()
    {
        for(int i=0; i<riga; i++)
        {
            for(int j=0; j<colonna; j++)
            {
                if(matrice[i][j].equals("C"))
                {
                    matrice[i][j]="*";
                }
            }
        }
    }
    
    public int terzoAngolo()
    {
        int contoTerzoAngolo=0;
        


        for(int i=riga-1; i< riga && i >=0;i--)
        {
            for(int j=0; j<colonna;j++)
            {
                if(matrice[i][j].equals("*"))
                {
                    if(j+1<colonna)
                    {
                        if(matrice[i][j+1].equals("*") && matrice[i][j].equals("*"))
                        {
                            contoTerzoAngolo++;
                            matrice[i][j]=matrice[i][j+1]="C";
                            System.out.println("terzzzooooooooo"+ " "+contoTerzoAngolo);
                            
                        }


                    }
                     if(i+1<riga)
                     {
                        if(matrice[i+1][j].equals("*")&& matrice[i][j].equals("*"))
                        {
                            contoTerzoAngolo++;
                            matrice[i][j]=matrice[i+1][j]="C";
                            System.out.println("terzzzoooooooooo"+ " "+contoTerzoAngolo);
                        }
                    }
                }
            }
        
        }
        return contoTerzoAngolo;
    }//


    
    public void ripristina3()
    {
        for(int i=0; i<riga; i++)
        {
            for(int j=0; j<colonna; j++)
            {
                if(matrice[i][j].equals("C"))
                {
                    matrice[i][j]="*";
                }
            }
        }
    }
    
    public int quartoAngolo()
    {
        int contoQuartoAngolo=0;


        for(int i=riga-1; i< riga && i >=0;i--)
        {
            for(int j=colonna-1; j<colonna && j >=0;j--)
            {
                if(matrice[i][j].equals("*"))
                {
                    if(j+1<colonna)
                    {
                        if(matrice[i][j+1].equals("*") && matrice[i][j].equals("*"))
                        {
                            contoQuartoAngolo++;
                            matrice[i][j]=matrice[i][j+1]="C";
                            System.out.println("qua22222ooooo"+ " "+contoQuartoAngolo);
                            stampa();
                            
                        }


                    }
                         if(i+1<riga)
                         {
                             if(matrice[i+1][j].equals("*")&& matrice[i][j].equals("*"))
                             {
                                 contoQuartoAngolo++;
                                     matrice[i][j]=matrice[i+1][j]="C";
                                     System.out.println("quartoooooooo"+ " "+contoQuartoAngolo);
                                
                             }
                          }
                    }
            }
        
        }
        
        return contoQuartoAngolo;
    }//


    
    
    
    
    
    public int numeroTorri()
    {
        int counter1,counter2,counter3,counter4,risultato=0;
        counter1=counter2=counter3=counter4=0;
        
        
        //counter uno è 4
        
    counter1=primoAngolo();
        counter1+=controlloSoli();
        
        
        
        // counter 2 è 4pure
    counter2=secondoAngolo();
        counter2+=controlloSoli();
        
        
        
        // counter 3 è pure 4
        counter3=terzoAngolo();
        counter3+=controlloSoli();
        
        
        //counter 4 è 3 risposta essatta
        counter4=quartoAngolo();
        counter4+=controlloSoli();
        
        
        


    
        if(counter1<counter2 && counter1 <counter3 && counter1<counter4)
        {
            System.out.println("quarta"+ " "+ counter4);


             risultato= counter1;
        }
        if(counter2<counter1 && counter2< counter3 && counter2<counter4)
        {
            System.out.println("quarta"+ " "+ counter4);


            risultato= counter2;
        }
        
        if(counter3<counter1 && counter3<counter2 && counter3 <counter4)
        {    
            
            risultato= counter3;
        }
        
        if(counter4<counter1 && counter4<counter2 && counter4 <counter3)
        {    
            risultato= counter4;
            System.out.println("quarta"+ " "+ counter4);
        }
        
return risultato;
    }
    
    
    
    
    public void stampa()
    {
        for(int i=0; i<riga; i++){
            System.out.println();
            for(int j=0; j<colonna; j++){
                System.out.print(matrice[i][j]);
                }


            }    
    }
    


} // chiude classe