2016-08-14 14 views
1

(0.015*(0.05*0.05))のキューブルートを計算するにはどうすればよいですか?C#math.powキューブルート計算

double result = Math.Pow(0.015 * (0.05 * 0.05), 1.0/3.0); 

と私は0.03347を取得しています:

は、私は次の解決方法を試してみました。 Volframalphaと同じ計算: 0.015*(0.05*0.05)^0.330.00207となります。

私はここで間違っていますか?

+0

これは2つの異なる計算です。 – Enigmativity

+0

2番目の例ではカッコがありません^(0.015 *(0.05 * 0.05))^ 0.33' –

+1

これをWA - '(0.015 *(0.05 * 0.05))^(1/3)'で試してみましょう。 C#コードと同じ結果が得られます。 – Enigmativity

答えて

0

私には3つの懸念事項があります。

  1. あなたの表現の一部にMath.Powを()を利用している、しかし、あなたは後で会話中に与えられた式の最初の部分で()Math.Sqrtを使用したいと思うでしょう。

  2. 第二に、

  3. 第三に、式の不正な評価を起こし式の中括弧のグループ化の問題があり、あなたはしないでください、あなたの数値の後に「D」の文字の接尾辞を使用する必要があります予想される結果を評価するための10進数の値を持つ。

式: (0.3D×((0.0015d *(0.793700526d + Math.Sqrt(0.7071068)))+(0.015d * Math.Pow((0.05D * 0.05D)、( 1D/3D)))))

コード:

using System; 

namespace POW 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      // Corrected calculation derived from comment conversation given by author 
      double myCalculation1 = (0.3 * ((0.0015 * (0.793700526 + Math.Sqrt(0.7071068))) + (0.015 * Math.Pow((0.05 * 0.05), (1/3))))); 

      // d suffix used to ensure the non decimal value is treated as a decimal 
      double myCalculation2 = (0.3 * ((0.0015 * (0.793700526 + Math.Sqrt(0.7071068))) + (0.015 * Math.Pow((0.05 * 0.05), (1d/3d))))); 

      // Output the value of myPow 
      Console.WriteLine("The value of myCalculation is: {0}", myCalculation1); 
      Console.WriteLine("The value of myCalculation is: {0}", myCalculation2); 
     } 
    } 
} 

重要なのは、慣例により、あなたはそれぞれの番号の後に 'D' の接尾辞を使用したいと思うでしょう。