Programma in java....cosa viene stampato?

bius88
Salve a tutti, non ho ben capito l'esecuzione di questo programma:

public static int esercizio1A (int v[]) {
int c=0;
if(v.length % 2!=0)
c=-1;
else
for (int i=0; i int j = i + v.length/2;
if ((v % v[j] != 0) || (v[j] % v != 0))
c++;
}
return c;
}

cosa viene stampato nel caso in cui $v={1,8,9,11,7,4,27,3}$

Provo a svolgere l'esercizio:
Il metodo esercizio1A riceve come parametro un vettore di interi v; v.length è 7 quindi 7%2 è diverso da 0 quindi c=-1

j=i+3
v % v[j] è diverso da 0 oppure v[j] % v è diverso da 0, ritorna c

v[0] % v[3] è diverso da 0
v[1] % v[4] è uguale da 0 ma v[4] % v[1] è diverso da 0
v[2] % v[5] è diverso da 0
v[3] % v[6] è diverso da 0


Ora non so proprio continuare.....datemi una mano...grazie!

Risposte
bius88
Ora ho capito....dunque: r:{true, false, false, false, true}
Grazie!

bius88
Salve a tutti, vorrei una precisazione su una cosa che ho incontrato in un programma:
Se ho a che fare con un vettore com'è possibile che abbia nel programma due indici per esempio $i$ e $j$?

Rggb1
(Forse era meglio se aprivi un altro thread)

Non ci vedo nessun problema, magari li usa per calcolare indici differenti dello stesso vettore.

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.