Ratio.cs
1    using System.Collections;
2    using System.Collections.Generic;
3    using UnityEngine;
4    using TMPro;
5    
6    public class Ratio : MonoBehaviour
7    {
8        public int numerator, denominator;
9        public string ratioString;
10   
11       public TMP_InputField input;
12   
13       public Ratio(int num, int den)
14       {
15           numerator = num;
16           denominator = den;
17   
18           ratioString = num.ToString() + ':' + den.ToString();
19       }
20   
21       public void Simplify()
22       {
23           // Simplify the sign.
24           if (denominator < 0)
25           {
26               numerator = -numerator;
27               denominator = -denominator;
28           }
29   
30           int gcd_ab = BruteForce(numerator, denominator);
31           numerator = numerator / gcd_ab;
32           denominator = denominator / gcd_ab;
33   
34           ratioString = numerator.ToString() + ":" + denominator.ToString();
35       }
36   
37       int BruteForce(int num, int den) 
38       {
39           int gcd = 1;
40           for (int i = 1; i <= num && i <= den; i++)
41           {
42               if (num % i == 0 && den % i == 0)
43               {
44                   gcd = i;
45               }
46           }
47           return gcd;
48       }
49   }
50