Последователно извикване на функции в PHP

Може резултатът от работата на една функция да се подаде като параметър на друга. В следващия пример първо намираме квадрата на числото 2, а след това квадрата на резултата:

php<?php
  function func($num) {
    return $num * $num;
  }
  
  $res = func(func(2));
  echo $res; // извежда 16
?>

Функциите, разбира се, не е задължително да са еднакви.

Нека, например, имаме функция, която връща квадрата на число, и функция, която връща куба на число:

php<?php
  function square($num) {
    return $num * $num;
  }
  
  function cube($num) {
    return $num * $num * $num;
  }
?>

Нека с помощта на тези функции повдигнем числото 2 на квадрат, а след това резултатът от тази операция го повдигнем на куб:

php<?php
  $res = cube(square(2));
  echo $res;
?>

Нека сега имаме функция, която връща квадрата на число, и функция, която намира сумата на две числа:

php<?php
  function square($num) {
    return $num * $num;
  }
  
  function sum($num1, $num2) {
    return $num1 + $num2;
  }
?>

Нека намерим с помощта на тези функции сумата от квадрата на числото 2 и сумата от квадрата на числото 3:

php<?php
  $res = sum(square(2), square(3));
  echo $res;
?>
Задание 1

Нека имате функция, която връща кубичния корен на число, и функция, която закръгля дроб до три знака след десетичната запетая:

php<?php
  function root($num) {
    return pow($num, 1/3);
  }
  
  function norm($num) {
    return round($num, 3);
  }
?>

С помощта на тези функции намерете кубичния корен на числото 2 и го закръглете до три знака след десетичната запетая.