Szyfr Cezara: pierwsza wersja

Praktyka: teksty i szyfry - JavaScript od podstaw: konsola (JavaScript)

Juliusz Cezar przesuwał każdą literę o 3 miejsca w alfabecie: A staje się D, B staje się E, a pod koniec alfabetu wracamy na początek (X, Y, Z to A, B, C). Pierwsza wersja działa tylko dla wielkich liter. Kod litery zamieniamy na numer 0-25 (minus 65), dodajemy przesunięcie, bierzemy resztę z dzielenia przez 26 (to jest "zawijanie") i wracamy do kodu (plus 65). Spacja zostaje spacją.

const text = 'VENI VIDI VICI XYZ';
const k = 3;

let secret = '';
for (const ch of text) {
  const code = ch.charCodeAt(0);
  if (code >= 65 && code <= 90) {
    const n = (code - 65 + k) % 26;
    secret += String.fromCharCode(n + 65);
  } else {
    secret += ch;
  }
}
console.log(text);
console.log(secret);

Ładowanie interaktywnego edytora... Jeśli się nie pojawi, włącz JavaScript.

Wszystkie lekcje kursu JavaScript od podstaw: konsola·Zaloguj się, aby zapisać postęp na koncie.