Шифр Цезаря один из наиболее древнейших известных шифров. Схема шифрования очень проста — используется сдвиг буквы алфавита на фиксированное число позиций. Используемое преобразование обычно обозначают как ROTN, где N — сдвиг, ROT — сокращение от слова ROTATE, в данном случае «циклический сдвиг».
Алфавит действительно зацикливается, то есть буквы в конце алфавита преобразуются в буквы начала алфавита. Например, обозначение ROT2 обозначает сдвиг на 2 позиции, то есть, «а» превращается в «в», «б» в «г», и так далее, и в конце «ю» превращается в «а» а «я» — в «б». Число разных преобразований конечно и зависит от длины алфавита. Для русского языка возможно 32 разных преобразования (преобразования ROT0 и ROT33 сохраняют исходный текст, а дальше начинаются уже повторения). В связи с этим шифр является крайне слабым и исходный текст можно восстановить просто проверив все возможные преобразования.
Ну, условие крайне странное, я понимаю так, что числовой промежуток дан в 10тичной системе счисления, и каждое целое число на промежутке необходимо перевести в 16ричное. Если промежуток [28; 30], то это означает что туда входят такие целые числа как 28, 29, 30 (если промежуток обозначается квадратными скобками '[' и ']', то это включая числа что указаны его границами, если же круглыми '(' и ')', то не включая их.
Перейдем к переводу десятичных чисел в шестнадцатиричную систему счислени. Для этого делем число на 16, паралельно записывая его остаток и продолжая до тех пор, пока оно не станет меньше 16. 28 / 16 = 1; остаток 12
Тут ничего сложного, пользуемся табличкой переводов, смотрим, 12 из десятичной в 16ричной это буква C, а 1 оставляем как есть. Теперь запишим полученные числа: 1C - Это 28 в 16ричной
Точно так же переводим из 10тичной в 16ричную 29: 29/16 = 1; остаток 13 Получается 1D
Ну и как не трудно догадаться, 30 в 16ричной будет 1E. Но для наглядности проведем расчёты: 30/16=1; остаток 14
Постскриптум: — Задание сформулированно крайне не понятно и вот почему: Нижним индексом, по обыкновению, указывают систему счисления текущего числа, но тогда нет никакого смысла переводить в 16ричную систему из 16ричной. — Другой вариант, что 28 и 30 это числа указанные не в 16ричной, но они могут быть в любой системе счисления где больше 8 цифр :)
Если предерживаться первого предположения, то нужно просто записать все цифры 16ричной системы счисления от 28 до 30 включительно, тогда это будет: 28, 29, 30 Что вообще смысла не имеет, так что не претендую на идеально правильное решение, но это единственное адекватное, что пришло мне в голову. Может этот идеотизм как-то и по другому закручен :D
ВЫРАЖЕНИЕ: "Я рад, что учусь в Домашней школе!"
Сдвиг на 29 букв вперед
Объяснение:
Шифр Цезаря один из наиболее древнейших известных шифров. Схема шифрования очень проста — используется сдвиг буквы алфавита на фиксированное число позиций. Используемое преобразование обычно обозначают как ROTN, где N — сдвиг, ROT — сокращение от слова ROTATE, в данном случае «циклический сдвиг».
Алфавит действительно зацикливается, то есть буквы в конце алфавита преобразуются в буквы начала алфавита. Например, обозначение ROT2 обозначает сдвиг на 2 позиции, то есть, «а» превращается в «в», «б» в «г», и так далее, и в конце «ю» превращается в «а» а «я» — в «б». Число разных преобразований конечно и зависит от длины алфавита. Для русского языка возможно 32 разных преобразования (преобразования ROT0 и ROT33 сохраняют исходный текст, а дальше начинаются уже повторения). В связи с этим шифр является крайне слабым и исходный текст можно восстановить просто проверив все возможные преобразования.
Если промежуток [28; 30], то это означает что туда входят такие целые числа как 28, 29, 30 (если промежуток обозначается квадратными скобками '[' и ']', то это включая числа что указаны его границами, если же круглыми '(' и ')', то не включая их.
Перейдем к переводу десятичных чисел в шестнадцатиричную систему счислени. Для этого делем число на 16, паралельно записывая его остаток и продолжая до тех пор, пока оно не станет меньше 16.
28 / 16 = 1; остаток 12
Тут ничего сложного, пользуемся табличкой переводов, смотрим, 12 из десятичной в 16ричной это буква C, а 1 оставляем как есть.
Теперь запишим полученные числа:
1C - Это 28 в 16ричной
Точно так же переводим из 10тичной в 16ричную 29:
29/16 = 1; остаток 13
Получается 1D
Ну и как не трудно догадаться, 30 в 16ричной будет 1E. Но для наглядности проведем расчёты:
30/16=1; остаток 14
Постскриптум:
— Задание сформулированно крайне не понятно и вот почему:
Нижним индексом, по обыкновению, указывают систему счисления текущего числа, но тогда нет никакого смысла переводить в 16ричную систему из 16ричной.
— Другой вариант, что 28 и 30 это числа указанные не в 16ричной, но они могут быть в любой системе счисления где больше 8 цифр :)
Если предерживаться первого предположения, то нужно просто записать все цифры 16ричной системы счисления от 28 до 30 включительно, тогда это будет:
28, 29, 30
Что вообще смысла не имеет, так что не претендую на идеально правильное решение, но это единственное адекватное, что пришло мне в голову. Может этот идеотизм как-то и по другому закручен :D