如何算比例(C#)

怎么算比例(C#)
现在我有一个数组   { 80 , 120 , 300 }
我想把 数组里面的 数算出一个比例,如:
80:120:300 = 4:6:15
我想把4:6:15这个字符串存起来


我应该怎么把 4:6:15算出来啊???
------解决思路----------------------
有一句话 Sort 语句是多余的,删掉它,重写为
using System;
using System.Linq;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            var arr = new int[] { 80, 120, 300, 128, 272 };
            var x = 最大公约数(arr);
            var result = string.Join(":", arr.Select(u => u / x).ToArray());
            Console.WriteLine(result);
            Console.ReadKey();
        }

        private static int 最大公约数(int[] array)
        {
            var x = 最大公约数(array[0], array[1]);
            for (var i = 2; i < array.Length; i++)
                x = 最大公约数(x, array[i]);
            return x;
        }

        private static int 最大公约数(int a, int b)
        {
            var x = b % a;
            if (x == 0)
                return a;
            else
                return 最大公约数(x, a);
        }
    }

}