Здравствуйте, я ищу способ превратить введенные пользователем строки в матрицы, например: 28 = ПРОБЕЛ, 27 = ?, 26 = 0, 25 = A, 24 = B 23 = C 22 = D 21 = E 20 = F 19 =Г 18=Н 17=I 16=J 15=K 14=L 13=M 12=N 11=O 10=P 9=Q 8=R 7=S 6=T 5=U 4=V 3=W 2=X 1= Y 0=Z
"HI HOW ARE YOU?" -> "[18 17 28 18 11][3 28 25 8 21][28 1 11 5 27]"
при этом каждая буква/символ строки преобразуется в числовое значение (особое внимание к пробелу, я действительно не знаю, как превратить пробел в числа). Я буду использовать эти матрицы, чтобы сделать криптограф
Вы можете использовать utf8ToInt
x <- "HI HOW ARE YOU?"
Нам нужно pmin
, чтобы исправить ваше состояние 28 = SPACE
.
pmin(abs(utf8ToInt("HI HOW ARE YOU?") - utf8ToInt("Z")), 28)
# [1] 18 17 28 18 11 3 28 25 8 21 28 1 11 5 27
От ?utf8ToInt
:
Преобразование векторов символов в кодировке UTF-8 в целочисленные векторы, представляющие кодировку UTF-32, и обратно.
Первый шаг
utf8ToInt("HI HOW ARE YOU?")
[1] 72 73 32 72 79 87 32 65 82 69 32 89 79 85 63
из которого вычитаем utf8ToInt("Z")
, т.е. 90
потому что вы написали 0=Z
.
Позвоните abs
на результат, чтобы получить положительные числа.
abs(utf8ToInt("HI HOW ARE YOU?") - utf8ToInt("Z"))
# [1] 18 17 58 18 11 3 58 25 8 21 58 1 11 5 27
Последняя часть — это ваше состояние 28 = SPACE
, в котором pmin
вам поможет.