Salve a tutti, vi espongo il mio problema: io devo costruire un algoritmo che dati due vettore v1 e v2 mi dia un vettore v3 che comprenda solo gli elementi di v1 contenuti almeno 2 volte in v2. Per fare ciò ho scritto il seguente codice:
Il problema sorge quando vado a compilarlo: il compilatore mi da un illegal start of expression su ogni riga di inizio funzione cioè su:codice:import java.util.Scanner; public class Vet { public static void main (String [] args) { Scanner sc = new Scanner(System.in); System.out.println("Dimensione del primo vettore ?"); dim=sc.nextInt(); int[] v1 = new int[dim]; System.out.println("Dimensione del secondo vettore ?"); dimm=sc.nextInt; int[] v2 = new int[dimm]; leggi (v1); leggi (v2); costruisciVettore (v1, v2); stampa (costruisciVettore (v1, v2)); } public static int[] costruisciVettore (int []v1, int[]v2) { int[] v3 = new int[v1.length]; int pos=o; for (i=0 ; i<v1.lenght ; i++){ if (presente(v2, v1[i])) v1[i]=v3[] } v3=ridimensiona(v3, pos); return v3; } public static int[] ridimensiona (int[] v, int val) { int[] nuovov= new int[val]; for (int=0; i<val ; i++) { nuovoV[i]= v[i]; } return nuovoV; } public static int presente(int[]v , int val) { int cont=0; for (int i=0 ; i<v.length; i++) { if (v[i]=val) cont++; if (cont=2) return val;} } public static void leggi (int[]v) { Scanner sc = new Scanner(System.in); for (int i=o; i<v.length; i++){ System.out.println("elemento in posizione: "+i); v[i]=sc.nextInt(); } } public static void stampa (int[]v) { for (int i=0; i<v.legth; i++) System.out.println(v[i]+"elemento in posizione: "+i); } }
codice:public static int[] ridimensiona (int[] v, int val) {codice:public static int presente(int[]v , int val) {ecc..codice:public static void leggi (int[]v) {
Non capisco dove stia il problema, che c'è di sbagliato in public static ....... ???

Rispondi quotando