Wangyou Zhang Posted November 19, 2018 Share Posted November 19, 2018 (edited) I write a workflow for converting a given decimal to a simplified fraction as well as simplifying a given fraction. It saves me a lot of time and I hope it is useful for you too. DownloadYou can download the workflow file from my GitHub. Examples frac .11 ==> .11 = 11 / 100 frac 4/6 ==> 4/6 = 2 / 3 frac -1.4/2.2 ==> -1.4/2.2 = -7 / 11 frac 1.2/0 ==> Error: divided by zero. frac b/3 ==> Error: Invalid input format ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Update 7 additional math tools are added and the new workflow is renamed to MathTools. Quote @CJK @Thomas_U Thank you for your feedback and suggestions. 1) Simplify fractions Examples: frac .11 ==> .11 = 11 / 100 frac 4/6 ==> 4/6 = 2 / 3 frac -1.4/2.2 ==> -1.4/2.2 = -7 / 11 2) Greatest common divisor Examples: 3) Least common multiple Examples: 4) Simplify surds Examples: sqrt .0144 ==> √(.0144) = 3/25 = 0.12 sqrt 4 8/81 ==> ³√(8/81) = (2/3) ³√(1/3) Note: Negative numbers are not supported. 5) Log functions Examples: log 5 ==> log₁₀(5) = 0.698970004336 log2 1.0001 ==> log₂(1.0001) = 0.000144262291095 ln e ==> ln(e) = 1.0 Note: e=2.718281828... can be used only in some simple cases, and in most cases it is used as the scientific notation. 6) Prime factorization Examples: factor 100 ==> factor(100) = [1, 2, 2, 5, 5] factor 31 ==> factor(31) = [1, 31] Note: The maximum value of input integer is limited in case of memory overflow. 7) Permutations and Combinations Examples: C( 4 2 ==> C(4, 2) = 6 c( 1000 3 ==> C(1000, 3) = 166167000 P( 4 2 ==> P(4, 2) = 12 p( 1000 3 ==> P(1000, 3) = 997002000 Note: The maximum value of m is limited for both permutations and combinations. Edited November 21, 2018 by Wangyou Zhang Update CJK and Bhishan 2 Link to comment
CJK Posted November 19, 2018 Share Posted November 19, 2018 Nice idea and workflow. You could maybe think about expanding its capabilities to become a more general maths tool. From simplifying fractions, it's not a big leap to incorporate GCD and LCM. And then, maybe, handling/simplifying surds, expressing compound fractions, obtaining the integer or fractional portions of a number, and coping with modular arithmetic. Just thinking out loud. Thanks for the sharing this. Link to comment
Thomas_U Posted November 20, 2018 Share Posted November 20, 2018 What a little jewel! Thank you so much! Would it be possible to simplify german comma instead of dot/period? Link to comment
Wangyou Zhang Posted November 20, 2018 Author Share Posted November 20, 2018 15 hours ago, CJK said: Nice idea and workflow. You could maybe think about expanding its capabilities to become a more general maths tool. From simplifying fractions, it's not a big leap to incorporate GCD and LCM. And then, maybe, handling/simplifying surds, expressing compound fractions, obtaining the integer or fractional portions of a number, and coping with modular arithmetic. Just thinking out loud. Thanks for the sharing this. @CJK Thank you for the suggestions! I will consider adding these features later :) Link to comment
Wangyou Zhang Posted November 20, 2018 Author Share Posted November 20, 2018 (edited) 13 hours ago, Thomas_U said: What a little jewel! Thank you so much! Would it be possible to simplify german comma instead of dot/period? Hi, I added support for German comma as a decimal point just now. You can try the updated workflow here. Edited November 20, 2018 by Wangyou Zhang Link to comment
Thomas_U Posted November 26, 2018 Share Posted November 26, 2018 Thanks - works perfect! Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now