2016-09-30 11 views
-1

私はC#を使用してそれを達成するにはどうすればよい3.03x10^10ダブル科学的表記形式10日、電力のC#

のようにそれを表示したい

double value = 30308950000;を持つのでしょうか?

私は3.03E+10フォーマットが、3.03x10^10をたくない

double value = 30308950000; 
Console.WriteLine(value.ToString("0.###E+0", CultureInfo.InvariantCulture)); 

出力= 3.03E+10

を試してみました。 おかげ

+0

どのようにしてこの質問を投票できますか?それは絶対にトリビアではありません!受け入れられた答えはひどい。 – Orace

+0

これを投票した人もここにコメントを残すべきです。だから私たちはもっと良い解決策を得ることができます。 – John

+0

@Oraceこの質問は投票しないでください - はい、しかし私の答えは正確に「ひどい」ですか?自分自身を記述してください、私はそれを修正するために最善を尽くします。 – TheRealVira

答えて

0

簡単修正:ジョンスキートに出

double value = 30308950000; 
Console.WriteLine(
    value.ToString("0.###E+0", CultureInfo.InvariantCulture) 
     .Replace("E-","x10^-") 
     .Replace("E+","x10^")); 

シャウト! :)

+0

これは、実際に結果に実際にE + 10がある場合にのみ機能します。これはE + 9などでは(書かれているように)うまくいきません。サンプル値だけで動作するソリューションをお持ちなら、 'Console.WriteLine(" 3.03x10^10 " ) ' –

+0

はい、あなたは正しいです、ソリューションを更新しました。 – TheRealVira

+1

まだそれは少し上にあるようです。 'E +'を 'x10 ^'と 'E-'を 'x10^--'に置き換えてみませんか? –

関連する問題