Испытания

Пары без функций

PHP: Составные данные

Пары неотрицательных целых чисел можно представить числами и арифметическими операциями. Можно считать, что пара чисел a и b – это 2^a * 3^b.

Функции car() и cdr() при этом будут просто вычислять значения a и b (кратности двойки и тройки, соответственно), раскладывая аргумент на множители.

Например, имея пару 5, 8 в виде числа 209952 (2^5 * 3^8), можно получить первый элемент пары, разложив число на множители и вычислив факторизацию для числа 2, а второй элемент пары – разложив число на множители и вычислив факторизацию для числа 3.

src/pairs.php

Реализуйте следующие функции в соответствии с алгоритмом выше:

  • cons()
  • car()
  • cdr()

Пример

$pair = cons(5, 8); // 2^5 * 3^8 = 209952
car($pair); // 5
cdr($pair); // 8

Подсказки

  • Пара – это число, поэтому, чтобы получить из него исходные значения a и b, нужно раскладывать число на множители.
Успешных завершений: 89%

Последние код-ревью

Автор Дата обновления Версий
user-cfca751b3784b7c6 01 июля, 18:58 1
eleizotova 25 июня, 10:01 1
lenri 17 июня, 20:22 1
melsior 09 июня, 10:20 1
skvord89 28 мая, 10:58 2