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

Do you need help?

Notice Board

Per partecipare al corso di Fondamenti di programmazione 2023-24 loggatevi e attivatelo nella vostra pagina dei corsi preferiti. A quel punto il corso appare nel menù personale cliccando sul proprio avatar. Per i materiali degli anni precedenti seguite lo stesso metodo.

To join the Programming/Lab 2023-24 course, log-on and select it on the my courses page. It will appear on the personal menu of your avatar. For earlier years use the same method.

problema richiesta esercizio 3 hw1

split (8700 points)
21 59 79
in Es3 by (8.7k points)
non ho capito bene una cosa nella richiesta dell'esercizio 3.

una volta ripulita la stringa dai caratteri fuori da (a,z) e una volta eliminati i "doppioni" ho una stringa che è definita nella consegna "DISORDINATA", anche strillando!

quindi se io ho la stringa ciaociAo la ripulisco e viene ciaocio, togliendo i doppioni vengono le quattro lettere di ciao, ora mi chiedo, nell 'ordine indicato nella consegna viene acio è la stessa cosa se alla fine di queste operazioni ho ciao oica, caio, iaco ecc...?? o mi deve venire necessariamente acio?
775 views
closed

2 Answers

Best answer
francesco.dev (33560 points)
23 51 129
by (33.6k points)
selected by

Ciao!
Ti deve venire esattamente "acio", perché poi ogni carattere sarà associato ad una determinata codifica! Quindi ogni carattere poi verrà usato per sostituire il suo corrispondente!

Ti consiglio di leggere attentamente l'esempio, soprattutto quello con la chiave "sim sala Bim!"
Il professore dice chiaramente che da tale chiave, dopo averla "ripulita", si ottiene la parola "slaim"
Ora ti basterà ordinare la parola "slaim" per ottenere il suo corrispondente (che è "ailms") ed associare ad ogni carattere della parola disordinata un carattere della parola ordinata!

- Francesco Pio Scognamiglio

LeonardoEmili (35740 points)
14 65 155
by (35.7k points)
Quoto francesco.dev
francesco.dev (33560 points)
23 51 129
by (33.6k points)
Grazie mille :)
split (8700 points)
21 59 79
by (8.7k points)
si l'avevo inteso così, ma allora non ho capito il senso di DISORDINATE
edoardo (7090 points)
19 52 67
by (7.1k points)
Intendila così: nel caso si sim sala Bim! avevi slaim che non è ordinata alfabeticamente, mentre ailms lo è infatti: a < i < l < m < s
split (8700 points)
21 59 79
by (8.7k points)
AAAAAH! mo ho capito, grazie edoardo
edoardo (7090 points)
19 52 67
by (7.1k points)
Ahaha, di nulla!
D
Domenicobrz (1470 points)
3 9 19
by (1.5k points)
edited by
Per la chiave 'ciaociAo' il risultato della chiave elaborata dev'essere necessariamente 'acio'

Questo perchè in seguito dovrai ordinare le lettere di quella stringa di testo ed utilizzarle per crittografare il testo passato come secondo argomento alla funzione. Nel tuo esempio in particolare la chiave 'disordinata' è già in realtà ordinata perchè provare ad ordinare le lettere della parola 'acio' da nuovamente 'acio'

Facendo un altro esempio, usando come chiave 'programmare di notte', la risultante chiave disordinata sarebbe 'pgmardinote' mentre l'ordinata sarebbe 'adegimnoprt'. Adesso, se prendo il testo passato come secondo argomento della funzione, e ad ogni lettera di questo che appartiene alla chiave ordinata associo la corrispondente lettera della chiave disordinata otterrò un testo crittografato

Ad esempio se provassi ad usare la chiave "programmare di notte" per crittografare la stringa di testo "fa bene alla salute"

- la 'f' che è il primo carattere del testo non è contenuta nella stringa ordinata, per cui la lascio invariata

- la 'a' che è il secondo carattere, nella chiave ordinata è posizionata nello stesso indice della 'p' nella chiave disordinata per cui sostituisco tutte le 'a' del testo finale con una 'p', e così via per tutti i restanti caratteri del testo

il risultato crittografato del testo sarebbe infine: "fp bmim pllp spluem"