2016-10-09 5 views
-2

Здесь я пытаюсь использовать Math.Sqrt для вычисления гипотенузы значений. Я думаю, что просто использую это неправильно. Я думаю, что возможно, что я делаю это сложнее, чем нужно делать, делая Math.Pow отдельно. Я не могу найти никаких твердых ссылок для использования . Я получаю ошибку для Math.Sqrt является:.?Math.Sqrt принимает 2 аргумента в рамках метода

«Нет перегрузки метода 'Sqrt' не принимает 2 аргумента

Как я могу сделать расчет Sqrt наиболее эффективно

namespace Lab_* 
{ 
    class Program 
    { 
     static void Main() 
     { 

      // ask user to input first side of the triangle 
      Console.WriteLine("Enter the first side of your triangle"); 

      // save input as a variable 
      double sideOne = double.Parse(Console.ReadLine()); // 0 

      // ask user to input second side of triangle 
      Console.WriteLine("Enter the second side of your triangle"); 

      // save input as a variable 
      double sideTwo = double.Parse(Console.ReadLine()); // 1 

      // Call your CalcHypotenuse method and pass in the lengths of the two sides of the triangle as parameters 
      double hypotenuse = CalcHypotenuse(sideOne, sideTwo); 

      // label and display the returned value 
      Console.WriteLine(hypotenuse.ToString()); 
      Console.Read(); 
     } 

     **private static double CalcHypotenuse(double side1, double side2) 
     { 
      double hypotenuse; 
      side1 = Math.Pow(side1, 2); 
      side2 = Math.Pow(side2, 2); 
      hypotenuse = Math.Sqrt(side1,side2); 
      return hypotenuse; 
     }** 

    }//End class Program 

}// End namespace 
+0

Квадратный корень - это функция одного аргумента, что вторая? »Как я могу сделать Sqrt расчет наиболее эффективно? »--- как вы можете сделать это не эффективно? Что заставило вас подумать, что это «неэффективно»? – zerkms

+3

Математически 'Sqrt (side1, side2)' бессмысленно. Вы принимаете только квадратный корень из одного числа. Ваш код должен быть 'Math.Sqrt (side1 + side2)'. 'c = sqrt (a^2 + b^2)' – Rob

+0

Мне было интересно, есть ли способ сделать это, не делая Math.Pow сначала для обеих сторон отдельно - это все. Я работал над этим в течение нескольких часов, поэтому я не заметил, что «+» был, просто испортил его. –

ответ

0

Math .Sqrt (side1 + side2) был исправлением для кода. Спасибо за ваш вход @Rob

+0

вы должны брать квадратный корень из суммы квадратов * сторон; а не квадратный корень суммы сторон ... –