Digit cancelling fractions
The fraction 49/98 is a curious fraction, as an inexperienced mathematician in attempting to simplify it may incorrectly believe that 49/98 = 4/8, which is correct, is obtained by cancelling the 9s.
We shall consider fractions like, 30/50 = 3/5, to be trivial examples.
There are exactly four non-trivial examples of this type of fraction, less than one in value, and containing two digits in the numerator and denominator.
If the product of these four fractions is given in its lowest common terms, find the value of the denominator.
This problem is very simple if you were to solve it with the help of python. In python you will have to use a module to deal with fractions. It is called fractions module. It is so simple to learn and you can see the documentation: fractions - Rational Numbers.
We shall consider fractions like, 30/50 = 3/5, to be trivial examples.
There are exactly four non-trivial examples of this type of fraction, less than one in value, and containing two digits in the numerator and denominator.
If the product of these four fractions is given in its lowest common terms, find the value of the denominator.
This problem is very simple if you were to solve it with the help of python. In python you will have to use a module to deal with fractions. It is called fractions module. It is so simple to learn and you can see the documentation: fractions - Rational Numbers.
Please go and have a look at the official documentation and you will see its simplicity.
If you will understand the fractions module then you can directly have a look at the code, because there is no big algorithm to understand.
Program
As given in the question the value of the fractions which will have the given qualities have a value less than 1(denominator > numerator). The same can be seen in the second for loop.
I have used Python sets to find the common element and I am assuming that you should be familiar with everything if you have given a look at fractions module.
To perfectly understand the program I recommend you to take a few examples and substitute the values in the code to see what is happening in the background.
A few examples you will have to try are49/98,59/68,89/99,30/40,12/20 .Try to evaluate each and every statement if it is necessary or not. Then I am sure you will for sure understand the code.
As always if you want to download the above source code then you can download it from Github Gist pep33.py
Output
Summary
This problem was relatively easy and I don't have any extra comments on this problem. I would have had any extra comments if I had not solved the problem with Python. Thanks to python, its inbuilt fraction module has helped me solve the problem easily.
If you have any doubt or didn't understand anything then comment in the comment box below and I will be glad to help you.
Please do comment if you have found any typo or have a better program or have a different program or have any suggestions. I will be glad to view each and every one of them.
You can also contact me.
Thank you. Have a nice day😃.