Пару можно создать на основе строки. Для хранения двух значений применим разделитель. Им может выступить любой символ, однако во избежание совпадений с исходными данными лучше взять редко используемое значение.
Для этого подойдёт так называемая управляющая или escape-последовательность, которая начинается с обратной косой черты. Мы будем использовать специальный символ \t
, обозначающий горизонтальную табуляцию.
Функции car()
и cdr()
должны получить содержимое строки до и после разделителя соответственно.
Управляющая последовательность воспринимается интерпретатором как одиночный символ, то есть имеет длину, равную 1.
Обязательным условием является отсутствие данного символа в строках, которые объединяются в пару.
src/pairs.php
В соответствии с алгоритмом выше реализуйте функции:
cons()
car()
cdr()
Примеры:
$pair = cons('computer', 'science'); // 'computer\tscience'
car($pair); // 'computer'
cdr($pair); // 'science'
Для полного доступа к испытанию нужен базовый план
Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.