Una stringa è considerata quadrata se sono soddisfatte le seguenti condizioni:
- Ogni riga ha lo stesso numero di caratteri
- Il numero di caratteri su ogni riga è uguale al numero di righe.
Il tuo compito è scrivere un programma o una funzione che determina se una determinata stringa di input è o meno un quadrato.
Potrebbe essere necessario delimitare l'input a scelta tra LF, CR o CRLF.
I caratteri di nuova riga non sono considerati parte della lunghezza della linea.
Potrebbe essere necessario che ci sia o meno una nuova riga finale nell'input, che non conta come una riga aggiuntiva.
L'input è una stringa o array di caratteri 1D; non è un elenco di stringhe.
È possibile supporre che l'input non sia vuoto e contenga solo ASCII stampabili, inclusi gli spazi.
Devi generare un valore di verità per le stringhe quadrate e uno di falsa per le altre stringhe.
Casi di prova veritieri:
foo bar baz
.
.S. .SS .S. (s rappresenta lo spazio)
ss ss (s rappresenta lo spazio)
AAAAA AAAAA AAAAA AAAAA AAAAA
Casi di prova falsi:
.. .
.
.
.... ....
4444 333 22
333 333
abc.def.ghi
Nota righe vuote extra in alcuni casi falsi.
Questo è code-golf - vince meno byte!