Mobile coding works. A laptop is faster for long sessions.
Problem
Read a natural number `n` and print its mirror (the number obtained by reading its digits from right to left). The computation must be done using **a recursive function**.
Define a recursive function `mirror(n, acc)` that takes the remaining number to process and an accumulator for the result built so far. At each call, the last digit of `n` is appended to `acc`:
```
mirror(0, acc) = acc
mirror(n, acc) = mirror(n / 10, acc * 10 + n % 10), for n > 0
```
For `n == 0` the program prints `0`.
Input format
Input
input.txt
The program reads from standard input a single natural number `n`. - `0 <= n <= 1.000.000.000` - The solution must use recursion.
Output format
Output
output.txt
The program prints the mirror of `n`, followed by a newline. Trailing zeros in `n` become leading zeros in the mirror and are not printed (for example, the mirror of `1000` is `1`).
Example
input
12345
output
54321
Stuck?
Use the Get Hint button in the action bar to reveal a guided hint.
💬 Discussion
Loading...💬
No comments yet. Be the first to start the discussion!
💻 No output yet.
Click Run in the editor to execute your code with the custom input.
Sample cases (from the problem)
Sample Case 1
Input
12345
Expected output
54321
Solve it your way first
Community solutions unlock after you submit a passing solution. Don't peek.
Ready to solve this challenge?
Create a free account to write code, submit solutions, and track your progress.
⌨️ Keyboard Shortcuts
Code Editor
Run Code
Ctrl
Enter
Submit Code
Ctrl
Shift
Enter
Format Code
Shift
Alt
F
Toggle Comment
Ctrl
/
Undo
Ctrl
Z
Redo
Ctrl
Y
Navigation
Global Search
/
Show Shortcuts
?
Close Modal
Esc