logo CodeStepByStep logo

mirror_sequence

Language/Type: PHP recursion

Write a recursive function named mirror_sequence that accepts an integer parameter $n and prints a sequence of $n integers, descending from $n to 1 and then ascending back from 1 to $n as in the table below.

Call Output
mirror_sequence(1); 1
mirror_sequence(2); 1 1
mirror_sequence(3); 2 1 2
mirror_sequence(4); 2 1 1 2
mirror_sequence(5); 3 2 1 2 3
mirror_sequence(6); 3 2 1 1 2 3
mirror_sequence(7); 4 3 2 1 2 3 4
mirror_sequence(8); 4 3 2 1 1 2 3 4
mirror_sequence(9); 5 4 3 2 1 2 3 4 5
mirror_sequence(10); 5 4 3 2 1 1 2 3 4 5

Note that for odd numbers the sequence has a single 1 in the middle, while for even values it has two 1s in the middle. Your function should throw an Exception if passed a value less than 1.

Function: Write a PHP function as described, not a complete program.

You must log in before you can solve this problem.

Log In

Need help?

Stuck on an exercise? Contact your TA or instructor.

If something seems wrong with our site, please

Is there a problem? Contact us.