Originariamente inviato da vfldj
Grazie per la tua pazienza!
Il 5 l'avevo messo per fare una prova..
so che la lettura da tastiera non necessita di un secondo array ma l'esercizio mi chiedeva di fare in questo modo..
Ho provato a correggere seguendo i tuoi consigli però non so cosa scrivere al posto dei puntini..

codice:
import java.util.Scanner;
public class Esercizio1 {
	public static void main(String[] args) {
		Scanner tast = new Scanner(System.in);
		
		int[] a = new int[0];
		int[] b;
		int n = 0;
		int cont = 0;
		
		System.out.println("Inserisci un intero o un non-int per finire");
		while (tast.hasNextInt() && cont<10) {
			n = tast.nextInt();
			cont++;
			b = new int[a.length + 1];
			for(int i=0; i<a.length; i++) {
				b[i] = a[i];
			}
			b[b.length - 1] = n;
			a = b;
			System.out.println("Inserisci un intero o un non-int per finire");
		}
		System.out.println("Array risultato: ");	
		for(int i=0; i<a.length; i++) {
			for(int j=0; j<a[i]; j++) {
				if (a[i] % j == 0) {
					...
				}
				else
					...
			System.out.println(a[i] + ...);
			}
		}

	}	
}
Semplicemente dentro al ciclo interno metti un if con quella condizione, l'else non serve nemmeno... se il modulo è 0 stampa j, stop.