Ho il seguente ciclo che sto cercando di tradurre per capirlo......
for(i=0; i<n; i ++)
printf("%6d%c", a[i], (i%10==9 || i==n-1) ? '\n' : ' ');
Provo a dire quello che ho compreso in Italiano....
for(i=0; i<n; i ++)
Per i uguale a zero, per i minore di n allora incrementare i di una unita per volta.
Ovviamente si sa che il ciclo for è un contatore e per quersto ciclo for non ho dubbi!
Adesso però ho dei dubbi nel tradurre la stringa del printf.....
printf("%6d%c", a[i], (i%10==9 || i==n-1) ? '\n' : ' ');
Ovviamente è una stringa di stampa e dice ("%6d%c") di stampare con una distanza di 6 spazi a partire da sinistra, ma poi che sta a significare quel ("%c")
Poi si ha (i%10==9 || i==n-1) e questo significa che deve fare una divisione tra i e 10 e deve essere uguale a 9, oppure si deve avere i che deve essere uguale ad n-1.
E poi si ha (? '\n' : ' '), dove non capisco che significato ha in quel contesto il punto interrogativo?
Si ha il simbolo \n che sta a newline e poi i due punti (:) che non so che significato ha in questo conteso e poi (' ') che anche questo non so che senso ha in questo conteso
Cosa ne pensate della mia traduzione del codice
Qualcuno potrebbe aiutarmi a fare chiarezza in merito ai dubbi che ho
Grazie anticipatamente!