Please ignore secret bonuses. Secret tests do NOT award bonus. Max hw grade is 30+2 bonus efficiency

Do you need help?

Dubbio ..!! stupido !!

in Programmare in python by (980 points)
recategorized by
Se devo ordinare rispetto all'ordine lessicografico ..

le parole :

              'esercizio', 'homework', 30(int)

Quale sarà l'ordine ..?
418 views

1 Answer

Auron (15880 points)
51 126 194
by (15.9k points)

Innanzitutto non puoi fare confronti tra valori di tipo Stringa e valori Integer... Per questo motivo, immagino che 30(int) sia in realtà '30(int)', racchiuso tra due singoli apici.
Per rispondere alla tua domanda, ai numeri è assegnato un valore più piccolo delle lettere (sia maiuscole, che minuscole) e a parità di primo numero si guarda il secondo e così via finchè nel confronto non si trovano due numeri diversi ('1000000'<'550'<'551'), alle lettere maiuscole è assegnato un valore più piccolo delle lettere minuscole (stesso discorso dei numeri, in caso di lettere uguali).
Una volta stabiliti questi "macro-Equilibri", all'interno di stringhe che iniziano allo stesso modo (tutte per numeri, tutte per maiuscole, o tutte per minuscole) si segue l'ordine alfabetico per lettere e numerico per i numeri.
Forse un piccolo schema ti sarà più chiaro:

'0' < '1' < '10' < '11' < '2' < ... < '8' < '89' < '9' < 'A' < 'AA' < 'AB' < 'Aa' < 'B' < ... < 'Y' < 'YA' < 'YZ' < 'Ya' < 'Z' < 'a' < 'aB' < 'aa' < 'ab' < 'b' < ... < 'y' < 'yA' < 'yz' < 'ya' < 'z'
Spero di aver trattato tutti i casi particolari wink

P.s. Non sentirti troppo stupido, a volte queste "piccolezze" sono quelle che ti fanno impazzire in cerca di un errore... Meglio chiedere prima laugh