Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Understanding the Caesar cipher
- В этом материале мы спокойно и по шагам разберём учебную задачу на программирование.
- Задача
- Реализовать шифр Цезаря: сдвинуть каждую букву строки на фиксированное число позиций в алфавите.
- Решение
- ``python
- def caesar(text: str, shift: int) -> str:
- result = []
- for ch in text:
- if ch.isalpha():
- base = ord('A') if ch.isupper() else ord('a')
- result.append(chr((ord(ch) - base + shift) % 26 + base))
- else:
- result.append(ch)
- return ''.join(result)
- print(caesar("Hello, World!", 3))
- `
- Как это работает
- Буква переводится в номер внутри алфавита, к номеру прибавляется сдвиг, а остаток от деления на 26 обеспечивает «зацикливание» алфавита. Прочие символы не меняются.
- Пример работы
- `text
- Khoor, Zruog!
- ``
- Сложность
- O(n) по времени, O(n) по памяти под результат.
- Это решение удобно как отправная точка для экспериментов: попробуйте изменить входные данные и проследить за поведением кода.
- View Full Gallery → https://go.cbrop.com/prse
- Related:
- https://pastebin.com/KtAsFtMr
- https://avdc.org/wp-content/uploads/event-manager-uploads/event_banner/2026/11/dalila-lapiedra-only-tarts-212060-96519c.pdf
- https://yakihonne.com/article/naddr1qvzqqqr4gupzpwvpjfu9y4nz9ut02mldq6dsf9ancm3522uncvlsq8vadupwg2x5qy28wumn8ghj7un9d3shjtnyv9kh2uewd9hszrthwden5te0dehhxtnvdakqzynhwden5te0danxvcmgv95kutnsw43qqtr8v9kxcetj0yknsvmzvd3kgvec94nxxdp3956rvv3j943rscfj95exvctpxuukyvfjvserv3eekac
- https://mehendi.gallery/%EB%A1%A4%EC%95%BC%EC%A7%A4?f=instapaper
- https://milhench.com/wp-content/uploads/event-manager-uploads/event_banner/2026/11/ct-scan-024111.pdf
Advertisement
Add Comment
Please, Sign In to add comment