sulea Posted June 14, 2011 Report Share Posted June 14, 2011 se da urmatoarea functie cu care s-a criptat un text.function criptfor i de la 1 la lungime_text-1 sir=sir+3 sir[i+1]=sir[i+1]-5end forsir=sir+iend function criptavem outputul: dqt+fcpxmecl_sp_rccare a fost textul initial care s-a criptat?(este vorba de o echipa de fotbal mereu 'la moda')trimiteti raspunsurile prin pm Quote Link to comment Share on other sites More sharing options...
flux Posted June 14, 2011 Report Share Posted June 14, 2011 trimiteti raspunsurile prin pmai pm.__ Quote Link to comment Share on other sites More sharing options...
totti93 Posted June 14, 2011 Report Share Posted June 14, 2011 Poi n-am auzit de echipa asta:-? Ai PM 1 Quote Link to comment Share on other sites More sharing options...
em Posted June 14, 2011 Report Share Posted June 14, 2011 Eu n-am auzit in viata mea de echipa asta.ai pm. Quote Link to comment Share on other sites More sharing options...
anon Posted June 14, 2011 Report Share Posted June 14, 2011 interesant>>pm Quote Link to comment Share on other sites More sharing options...
cristi_89 Posted June 14, 2011 Report Share Posted June 14, 2011 ai pm si de la mine... Quote Link to comment Share on other sites More sharing options...
sulea Posted June 14, 2011 Author Report Share Posted June 14, 2011 am primit 6 raspunsuri diferite, si anume:asv-herzogenauratpfsv-herzogenauratearv-herzogenaurateasv-herzogenauradhasv-herzogenaurachasv herzogenaura (ar fi trebuit sa scrii inputul)eu dupa cine sa ma iau? Quote Link to comment Share on other sites More sharing options...
flux Posted June 14, 2011 Report Share Posted June 14, 2011 am primit 6 raspunsuri diferite, si anume:asv-herzogenauratpfsv-herzogenauratearv-herzogenaurateasv-herzogenauradhasv-herzogenaurachasv herzogenaura (ar fi trebuit sa scrii inputul)eu dupa cine sa ma iau?asv-herzogenaurate Quote Link to comment Share on other sites More sharing options...
cristi_89 Posted June 14, 2011 Report Share Posted June 14, 2011 in PM am trimis cu tp la final... acum mi-am dat seama ca ar trebui sa fie tVok...hai sa vedem cum functioneaza din cate am inteles:primul caracter a fost incrementat cu 3 si s-a obtinut:d => d-3 = aurmatoarele pana la penultimul au fost incrementate cu 3 si decrementate cu 5, deci decrementate cu 2 si s-a obtinut:q => q+2 = st => t+2 = v+ => ++2 = -f => f+2 = hc => c+2 = ep => p+2 = rx => x+2 = zm => m+2 = oe => e+2 = gc => c+2 = el => l+2 = n_ => _+2 = as => s+2 = up => p+2 = r_ => _+2 = ar => r+2 = tUltimul caracter e decrementat cu 5 si incrementat cu 18 deci + 13c => c-13 = Vdeci rezultatul ar trebui sa fie "asv-herzogenauratV" - ceea ce nu are nici o logicaAsta in cazul in care for-ul e cel din pseudocod, nu cel din C cu strict < Quote Link to comment Share on other sites More sharing options...
flux Posted June 14, 2011 Report Share Posted June 14, 2011 sulea.php<?phpfunction sulea($s){ for($i=0; $i<strlen($s); $i++){ $s[$i]=chr(ord($s[$i])+3); if($i<strlen($s)-1) $s[$i+1]=chr(ord($s[$i+1])-5); } return $s;}function unsulea($s){ $len=strlen($s); for($i=1; $i<$len-1; $i++){ $s[$i]=chr(ord($s[$i])+2); } $s[0]=chr(ord($s[0])-3); $s[$len-1]=chr(ord($s[$len-1])+2); return $s;}echo sulea("steaua");echo "<br>";echo unsulea("vrc_s_");echo "<br>";echo unsulea("dqt+fcpxmecl_sp_rc");//echo unsulea(sulea("Ana are mere."));?><!--a b c d+3 -5 +3 -5 +3 -5 +3 -5--> Quote Link to comment Share on other sites More sharing options...
cristi_89 Posted June 14, 2011 Report Share Posted June 14, 2011 function criptfor i de la 1 la lungime_text-1 sir=sir+3 sir[i+1]=sir[i+1]-5end forsir=sir+iend function criptsulea.php<?phpfunction sulea($s){ for($i=0; $i<strlen($s); $i++){ $s[$i]=chr(ord($s[$i])+3); if($i<strlen($s)-1) $s[$i+1]=chr(ord($s[$i+1])-5); } return $s;}function unsulea($s){ $len=strlen($s); for($i=1; $i<$len-1; $i++){ $s[$i]=chr(ord($s[$i])+2); } $s[0]=chr(ord($s[0])-3); $s[$len-1]=chr(ord($s[$len-1])+2); return $s;}...?>@3348399: e ok ce ai scris tu, doar ca iti lipseste partea cu modificarea ultimului caracter Quote Link to comment Share on other sites More sharing options...
flux Posted June 15, 2011 Report Share Posted June 15, 2011 @3348399: e ok ce ai scris tu, doar ca iti lipseste partea cu modificarea ultimului caracter la ultimul e + 5 Quote Link to comment Share on other sites More sharing options...
cristi_89 Posted June 15, 2011 Report Share Posted June 15, 2011 la ultimul e + 5da... am vazut ca ai pus + 5dar uita-te in scriptul lui sulea din postul anterior linia scrisa cu rosu... Dupa ce iese din for, face urmatoarea atribuire: sir=sir+iaici i are valoarea 18 Quote Link to comment Share on other sites More sharing options...
sulea Posted June 15, 2011 Author Report Share Posted June 15, 2011 Dupa ce iese din for, face urmatoarea atribuire: sir=sir+iaici i are valoarea 18 oare chiar asa o fi ?? Quote Link to comment Share on other sites More sharing options...
cristi_89 Posted June 15, 2011 Report Share Posted June 15, 2011 oare chiar asa o fi ?? poi zi cum e daca nu e asa... ca nu inteleg Quote Link to comment Share on other sites More sharing options...
sulea Posted June 15, 2011 Author Report Share Posted June 15, 2011 pai i-ul parca merge pana la length-1, sau ma insel?oricum, eu inca astept raspunsuri Quote Link to comment Share on other sites More sharing options...
cristi_89 Posted June 15, 2011 Report Share Posted June 15, 2011 pai i-ul parca merge pana la length-1, sau ma insel?oricum, eu inca astept raspunsuri ok...nu stiu de ce aveam impresia ca atunci cand se iese din for-ul din pseudocod i e mai mare decat marginea superioara a intervaluluiIn cazul asta ultimele doua caractere sunt r + 2 - 17 = csi c + 5 = hraspunsul: asv-herzogenaurach Quote Link to comment Share on other sites More sharing options...
sulea Posted June 15, 2011 Author Report Share Posted June 15, 2011 ok...nu stiu de ce aveam impresia ca atunci cand se iese din for-ul din pseudocod i e mai mare decat marginea superioara a intervaluluiai gandit bine, insa la for-uri nu se depasesc limitele (cel putin in pascal).am transformat pseudocodul in limbaj pascal, si am scris si instructiunile de decriptare.:program test;uses crt;var i:integer; sir:string;beginclrscr; readln(sir); // criptarea : for i:=1 to length(sir)-1 do begin sir[i]:=chr(ord(sir[i])+3); sir[i+1]:=chr(ord(sir[i+1])-5); end; sir[i]:=chr(ord(sir[i])+i); writeln; writeln('textul criptat este: ',sir); writeln('i-ul la iesirea din for este: ',i); writeln; //decriptarea sir[i]:=chr(ord(sir[i])-i); for i:=length(sir)-1 downto 1 do begin sir[i+1]:=chr(ord(sir[i+1])+5); sir[i]:=chr(ord(sir[i])-3); end; writeln('textul decriptat este: ',sir); writeln('i-ul la iesirea din for este: ',i); writeln;end.cine poate sa-l transforme in c ?referitor la challenge, felicitari tuturor participantilor.+rep lui totti93 pt ca a fost primul care a raspuns corect Quote Link to comment Share on other sites More sharing options...
em Posted June 15, 2011 Report Share Posted June 15, 2011 Nu am stiut ca in Pascal indicii de String incep de la 1 (M-am gandit ca asa vrei tu). Asa cred ca au gresit multi.. Quote Link to comment Share on other sites More sharing options...
sulea Posted June 15, 2011 Author Report Share Posted June 15, 2011 l-am dat in pseudocod pt ca stiam ca mai sunt diferente intre limbaje.decriptarea ta a fost *buna*, insa cu o foarte mica modificare Quote Link to comment Share on other sites More sharing options...