0,"B"=>1,"C"=>2,"D"=>3,"E"=>4,"F"=>5,"G"=>6,"H"=>7,"I"=>8, "J"=>9,"K"=>10,"L"=>11,"M"=>12,"N"=>13,"O"=>14,"P"=>15,"Q"=>16,"R"=>17,"S"=>18,"T"=>19, "U"=>20,"V"=>21,"W"=>22,"X"=>23,"Y"=>24,"Z"=>25," "=>26); $alfabeto_inverso = array("0"=>"A","1"=>"B","2"=>"C","3"=>"D","4"=>"E","5"=>"F","6"=>"G","7"=>"H","8"=>"I", "9"=>"J","10"=>"K","11"=>"L","12"=>"M","13"=>"N","14"=>"O","15"=>"P","16"=>"Q","17"=>"R","18"=>"S","19"=>"T", "20"=>"U","21"=>"V","22"=>"W","23"=>"X","24"=>"Y","25"=>"Z","26"=>" "); $chave=2; $ordem = count($alfabeto); $chave_inversa = ($ordem - $chave); $mensagem_codificada = "YGPFGTBQBDQO"; for($i=strlen($mensagem_codificada); $i >= 0; $i--){ $x = -$i; $letras = substr(strtoupper($mensagem_codificada),$x,1); $letra[]=array($letras); } for($i=0; $i < strlen($mensagem_codificada);$i++){ $l = $letra[$i][0]; $lc = ($alfabeto[$l]+$chave_inversa); // converte para o codigo do alfabeto e soma à chave inversa if($lc > $ordem){ // encontra o resto e armazena $resto = $lc%$ordem; }elseif($ordem==$lc){ $resto=0; } else { $resto = $lc; } $numeros[]=array($resto); } for($i=0; $i <= strlen($mensagem_codificada); $i++){ $descodificar = $numeros[$i][0]; echo $alfabeto_inverso[$descodificar]; } ?>