title: How to save a very large number Unity
body: <p>I'm making an andoid game (clicker) on Unity. 1 500 321 stored as Millions = 1, Thousands = 500, Hundreds = 3, dozens = 2, units = 1.
  I have a main script that stores a number (code 1) and a script that reduces this number (code 2) (those were 100,000 became 1K). How to store a number that can reach 100 zeros so as not to heavily rewrite code 2 and it would be nice to be able to store the number (money) in PlayerPrefs ? Thanks in advance!</p>
  <p>code 1:</p>
  <pre><code>public Text moneyText;
  
  public int money;
  public int moneyPerClick = 1000000;
  
  void Start()
  {
      money = PlayerPrefs.GetInt(&quot;money&quot;);
      moneyPerClick = PlayerPrefs.GetInt(&quot;moneyPerClick&quot;);
  }
  
  void Update()
  {
      moneyText.text = FormatNumbers.formatNumber(money);
  }
  
  
  public void Clik()
  {
      money += moneyPerClick;
      PlayerPrefs.SetInt(&quot;money&quot;, money);
  }
  </code></pre>
  <p>code 2:</p>
  <pre><code>public static class FormatNumbers
  {
  
  public static string[] format_name = new[]
  {
      &quot;&quot;, &quot;K&quot;, &quot;M&quot;, &quot;t&quot;, &quot;q&quot;, &quot;Q&quot;, &quot;s&quot;, &quot;S&quot;, &quot;o&quot;, &quot;n&quot;, &quot;d&quot;, &quot;U&quot;, &quot;D&quot;, &quot;T&quot;, 
   &quot;Qt&quot;, &quot;Qd&quot;, &quot;Sd&quot;, &quot;St&quot;, &quot;O&quot;, &quot;N&quot;, &quot;v&quot;, &quot;c&quot;
  };
  
  public static string formatNumber(float num)
  {
      if (num == 0)
          return &quot;0&quot;;
  
      int i = 0;
      while(i+1 &lt; format_name.Length &amp;&amp; num &gt;= 1000f)
      {
          num /= 1000f;
          i++;
      }
      return num.ToString(&quot;#.##&quot;) + format_name[i];
  }
  </code></pre>