Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: cezar ?
Forum PHP.pl > Forum > Przedszkole
qwere
witam ... do napisania mam szyfr cezara i napotkałem kilka problemów ...

dokładnie chodzi mi o to zeby pobrać tekst z formularza , zaszyfrować i wyświetlić :

z formularzem sobie poradziłem ... mam juz tekst w zmiennej

problem w tym jak przesunać kazda literke np o 3 w prawo ... i tu pytanie czy nie ma innej mozliwości niz skorzystanie z chr(); i ord(); a poźniej z pętli :?:

jeśli nie - to jak pobrać z tekstu kazda literke osobno :?: chodzi mi o to zeby kazda literke z tekstu przesunać o określoną liczbe miejsc w prawo

z góry dzieki ..
tiraeth
Z tego co mi się wydaje, to Cezar używał ROT-13 (przesunięcie o 13 liter). Funkcja to str_rot13().

Można także tak:

a) statycznie
  1. <?
  2.  
  3. function rot13($str)
  4. {
  5.  $from = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
  6.  $to = 'nopqrstuvwxyzabcdefghijklmNOPQRSTUVWXYZABCDEFGHIJKLM';
  7.  $rot13str = strtr($str, $from, $to);
  8.  
  9.  return $rot13str;
  10. }
  11. ?>


cool.gif dynamicznie
  1. <?php
  2. function rot13($s)
  3. {
  4.  $rot13 = &#092;"\";
  5.  
  6.  for ($i = 0; $i < strlen($s); ++$i)
  7.  {
  8.  $char = ord($s{$i});
  9.  $cap = $char & 32;
  10.  
  11.  $char &= ~$cap;
  12.  $char = (($char >= ord('A')) && ($char <= ord('z'))) ? (($char - ord('A') + 13) % 26 + ord('A')) : $char;
  13.  $char |= $cap;
  14.  
  15.  $rot13 .= chr($char);
  16.  }
  17.  
  18.  return $rot13;
  19. }
  20. ?>


Wszystko pisze w manual'u, czy tak trudno zajrzeć ? >> php.net/str_rot13
qwere
thinx ...
a co do manuala to
snitch.gif wszytko ładnie pieknie tylko w manualu nie jest tak łatwo poczatkujacym cos znalesć jak bym wiedział ze str_rot13 robi to co robi to bym poczytał o tym i nie zawracał wam głowy snitch.gif
scanner
Dokładnie to Cezar stosował przesuniecie o trzy.
Link: http://www.algorytm.cad.pl/Crypto/1-10/crypto1.html

Ale to tak tylko jako ciekawostkę.

Stosował także szyfr macierzowy z tego co pamiętam.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.