0

数値の有効数字の最後の6桁を表示するために、次の関数を作成しました。

private static string ShowSigDigits(long n, int sig)
{
    string[] arr1 = n.ToString().Select(c => c.ToString()).ToArray();

    // reverse the array of string characters 
    Array.Reverse(arr1);
    List<string> stringList = new List<string>();

    for (int x = 0; x < arr1.Length; x++)
    {
        // get the last sig significant digits (loop is zero-based)
        if (x <= sig-1)
        {
            stringList.Add(arr1[x]);
        }
    }

    stringList.Reverse();

    return(string.Join("", stringList.ToArray()));
}

たとえば、182736734,6と入力すると、736734になります。

これを行うためのより効率的な方法があると確信しており、いくつかの提案が必要です。

ありがとう。

4

2 に答える 2

1

(x%1000000)を文字列に変換します。%はモジュロ演算を表します。

于 2012-10-31T13:19:32.337 に答える
0

これを行うには多くの異なる方法があります-これSubstringは(VB.NETと同様に)最初に頭に浮かぶ方法の1つですStrings.Right

string nString = n.ToString();
return nString.Substring(nString.Length - sig);
于 2012-10-31T13:17:11.117 に答える