You said: "a fraction with the numerator smaller than the denominator", so test cases 3 to 6 are not consistent to this sentence. :-/
The Test Suite and problem statement are now consistent with each other, but I don't think anybody learned at school to write 1 9/7, rather than 2 2/7.
Other issues with the Test Suite (or problem statement): FIRSTLY, 1 2/3 is equal to 1 4/6, or 1 6/9, et cetera, but only the first option is accepted in the Test Suite. SECONDLY, the rounding used in the inputs means that more correct answers would be e.g. 1.33 = 1 33/100. LASTLY, there is no possible way to know that 2.00 should be represented as 1 5/5, rather than 1 4/4, or 1 3/3 et cetera.
We should not round real numbers if we want their rational representation. The real number 1.33 is not represented as 1+1/3, but rather as 1+33/100([1 33 100]). While rounding values, I was able to find a kind of ugly solution for this problem. However, the last test case does not make sense. The problem should require the minimum rational number to avoid multiple answers. Therefore, an integer number such as 2 should be represented as [1,1,1], 3 should be [1,2,1] and so on. Please, fix your test suite, it is a good problem.
Check if sorted
Bottles of beer
Is A the inverse of B?
Deleting an element in a matrix
Matlab Basics II - Count rows in a matrix
Create a v-notch vector without "sort" function
Let's get back to school, and create multiplication tables
Create a matrix with difference of each row of input matrix
Back to basics - array operations
Find my birthday
Find the treasures in MATLAB Central and discover how the community can help you!
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Contact your local office