Advertisement
avr39ripe

jsFractionDraft

Feb 22nd, 2021
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4.     <meta charset="UTF-8">
  5.     <title>Study</title>
  6. </head>
  7. <body>
  8.     <script>
  9.         `use strict`
  10.  
  11.         function printFract(fract, printer = (str) => console.log(str)) {
  12.             printer(`(${fract.num}/${fract.denom})`);
  13.         }
  14.  
  15.         function mulFract(fractA, fractB) {
  16.             return reduce({ num: (fractA.num * fractB.num), denom: (fractA.denom * fractB.denom)});
  17.         }
  18.  
  19.         function reduce(fract) {
  20.             // reduce code goes here
  21.             let gcdVal = gcd(fract);
  22.  
  23.             fract.num /= gcdVal
  24.             fract.denom /= gcdVal;
  25.  
  26.             return fract;
  27.         }
  28.  
  29.         {
  30.  
  31.             let frac1 = { num: 1, denom: 3 };
  32.             let frac2 = { num: 1, denom: 2 };
  33.             let frac3 = { num: 1, denom: 4 };
  34.  
  35.             //(2 * 3) * 4
  36.             printFract(frac1);
  37.             printFract(frac2);
  38.  
  39.             printFract(mulFract(frac1, frac2));
  40.             console.log(mulFract(mulFract(frac1, frac2), frac3));
  41.         }
  42.     </script>
  43. </body>
  44. </html>
  45.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement