Esercizio 1

Scrivere un programma che, letta una stringa attraverso i parametri su riga di comando, visualizzi tale stringa invertita (il primo carattere al posto dell'ultimo, il secondo al posto del penultimo, ecc...).
Esempio:

input: cane
output: enac

Implementare l'algoritmo che inverte la stringa attraverso un meccanismo ricorsivo.

Esercizio 2

Scrivere un programma che legga da file la rappresentazione di una scacchiera NxN.
Tale file utilizzera' il carattere '.' per rappresentare uno scacco vuoto e il carattere 'X' per rappresentare uno scacco occupato da un alfiere.
Esempio:

X.......
........
....X...
........
...X....
........
.....X..
.......X

Verificare quindi se ci sono alfieri che si tengono sotto scacco.

Esercizio 3

Scrivere un programma che legga interattivamente una matrice quadrata riga per riga (separando gli elementi attraverso il carattere spazio), cioe' un array bidimensionale NxN, inverta le righe con le colonne, e visualizzi la matrice cosi' ottenuta.

Es:

2 4 5
3 6 7
1 5 8

Diventa:

2 3 1
4 6 5
5 7 8

Svolgere il programma senza utilizzare una matrice di appoggio.