Non sapevo che titolo mettere, quindi scusatemi in anticipo.
L'esercizio che propongo è molto semplice, consiste nel fare una funzione che rimpiazzi la posizione di una lettera alfabetica con la lettera.
Vi faccio un esempio:
(Le lettere straniere sono incluse)
Lo script da voi fatto deve rimpiazzare gli spazi con questo carattere: "S", e rimuovere qualsiasi carattere speciale (compresi apici e accenti), inoltre la stringa dev'essere convertita in minuscolo.
L'esercizio non è finito qui, infatti dopo aver fatto la funzione che decripta è necessario fare anche quella che cripta
Una volta finito il codice decriptare questa frase ed inserirla nel tag off topic in una risposta in questo argomento:
E criptare questa frase sempre inserendola in una risposta e nel tag off topic:
Soluzione (Non sbirciate finché non avete finito):
[ot]
[/ot]
Buon divertimento!
L'esercizio che propongo è molto semplice, consiste nel fare una funzione che rimpiazzi la posizione di una lettera alfabetica con la lettera.
Vi faccio un esempio:
Codice:
a = 1 (posizione di a)
b = 2 (posizione di b, cioè a=1,b=2)
d = 4 (posizione di d, cioè a=1,b=2,c=3,d=4)
Lo script da voi fatto deve rimpiazzare gli spazi con questo carattere: "S", e rimuovere qualsiasi carattere speciale (compresi apici e accenti), inoltre la stringa dev'essere convertita in minuscolo.
L'esercizio non è finito qui, infatti dopo aver fatto la funzione che decripta è necessario fare anche quella che cripta
Una volta finito il codice decriptare questa frase ed inserirla nel tag off topic in una risposta in questo argomento:
Codice:
19 1 12 22 5 S 19 5 S 19 5 9 S 18 9 21 19 3 9 20 15 S 1 S 4 5 3 18 9 16 20 1 18 5 S 17 21 5 19 20 15 S 13 5 19 19 1 7 7 9 15 S 19 9 7 14 9 6 9 3 1 S 3 8 5 S 8 1 9 S 6 9 14 9 20 15 S 12 S 5 19 5 18 3 9 26 9 15 S 3 15 13 16 12 9 13 5 14 20 9 S 15 18 1 S 16 15 19 20 1 S 17 21 5 19 20 15 S 13 5 19 19 1 7 7 9 15 S 14 5 12 S 20 1 7 S 15 6 6 S 20 15 16 9 3 S 4 5 12 S 20 15 16 9 3 S 4 5 12 12 S 5 19 5 18 3 9 26 9 15
Codice:
Se questo codice viene criptato correttamente, significa che lo script funziona :-)
Soluzione (Non sbirciate finché non avete finito):
[ot]
PHP:
function decrypt_secret_key($key, $separator = ' ') {
$alpha = str_split("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789",1);
$keys = array();
for ($i = 0; $i < count($alpha); $i++)
$keys[($i+1)] = $alpha[$i];
$alpha['S'] = ' ';
$exp = explode($separator, $key);
$ret = '';
foreach ($exp as $k) {
if (is_numeric($k))
$s = (int) $k-1;
else
$s = $k;
$ret.=$alpha[$s];
}
return $ret;
}
function remove_special_keys($str) {
$banned=explode(" ","! \" £ $ % & / ( ) ? ' ì ^ 0 1 2 3 4 5 6 7 8 9 @ ò ç # à° ù § * + ] } è [ { é , ; . : - _ < > |");
return str_replace($banned,'',$str);
}
function encrypt_secret_key($key,$sep=' ') {
$alpha = str_split("abcdefghijklmnopqrstuvwxyz",1);
$rt = array();
$key=strtolower($key);
$key=remove_special_keys($key);
#$key=str_replace(' ','',$key);
for ($i = 0; $i < count($alpha); $i++)
$rt[$alpha[$i]] = ($i+1);
$rt[' ']='S';
$lettere=str_split($key,1);
$ret=array();
for ($i=0;$i<count($lettere);$i++) {
$ret[] = $rt[$lettere[$i]];
}
return implode(' ',$ret);
}
Buon divertimento!