ally marks are an example of a numeral system with unary encodings. A number n is represented with n tally marks. For example, 4 is represented as the string "| | | |", where each vertical line "|" is a tally. A recursive version of this definition of this encoding is as follows: Base Case 1: 0 is represented with zero tally marks which returns an empty string Base Case 2: 1 is just one tally without any spaces, so return a "|" directly Recursive Case: A positive number n is represented with (1 + the number of tally marks in the representation of n-1) tally marks. Here, we would string append a tally with a space and call the function recursively on the remainder n-1 number. Write a recursive function to calculate the unary encoding of a non-negative integer. Name the function unary_encoding(n), where n is a non-negative integer (0, 1, 2, …) and make the output a string of "|" characters separated by blank spaces, with no whitespace on the ends.
In this lab, we will -
- Use recursion functions to form a string from tally marks.
- Practice recursion with terminating conditions
- Apply string concatenation to create a string using different substrings
- Apply recursion in the return statement of a function
Instructions
Tally marks are an example of a numeral system with unary encodings.
A number n is represented with n tally marks. For example, 4 is represented as the string "| | | |", where each vertical line "|" is a tally.
A recursive version of this definition of this encoding is as follows:
Base Case 1: 0 is represented with zero tally marks which returns an empty string
Base Case 2: 1 is just one tally without any spaces, so return a "|" directly
Recursive Case: A positive number n is represented with (1 + the number of tally marks in the representation of n-1) tally marks. Here, we would string append a tally with a space and call the function recursively on the remainder n-1 number.
Write a recursive function to calculate the unary encoding of a non-negative integer.
Name the function unary_encoding(n), where n is a non-negative integer (0, 1, 2, …) and make the output a string of "|" characters separated by blank spaces, with no whitespace on the ends.
![](/static/compass_v2/shared-icons/check-mark.png)
Trending now
This is a popular solution!
Step by step
Solved in 6 steps with 3 images
![Blurred answer](/static/compass_v2/solution-images/blurred-answer.jpg)
![Computer Networking: A Top-Down Approach (7th Edi…](https://www.bartleby.com/isbn_cover_images/9780133594140/9780133594140_smallCoverImage.gif)
![Computer Organization and Design MIPS Edition, Fi…](https://www.bartleby.com/isbn_cover_images/9780124077263/9780124077263_smallCoverImage.gif)
![Network+ Guide to Networks (MindTap Course List)](https://www.bartleby.com/isbn_cover_images/9781337569330/9781337569330_smallCoverImage.gif)
![Computer Networking: A Top-Down Approach (7th Edi…](https://www.bartleby.com/isbn_cover_images/9780133594140/9780133594140_smallCoverImage.gif)
![Computer Organization and Design MIPS Edition, Fi…](https://www.bartleby.com/isbn_cover_images/9780124077263/9780124077263_smallCoverImage.gif)
![Network+ Guide to Networks (MindTap Course List)](https://www.bartleby.com/isbn_cover_images/9781337569330/9781337569330_smallCoverImage.gif)
![Concepts of Database Management](https://www.bartleby.com/isbn_cover_images/9781337093422/9781337093422_smallCoverImage.gif)
![Prelude to Programming](https://www.bartleby.com/isbn_cover_images/9780133750423/9780133750423_smallCoverImage.jpg)
![Sc Business Data Communications and Networking, T…](https://www.bartleby.com/isbn_cover_images/9781119368830/9781119368830_smallCoverImage.gif)