Как вычислить квадратный корень поплавка в C # - PullRequest
7 голосов
/ 04 декабря 2010

Как вычислить квадратный корень из Float в C#, аналогично Core.Sqrt в XNA?

Ответы [ 4 ]

15 голосов
/ 04 декабря 2010

Рассчитайте это для double и затем бросьте обратно, чтобы плавать.Может быть немного медленно, но должно работать.

(float)Math.Sqrt(inputFloat)
5 голосов
/ 01 марта 2013

Ненавижу говорить это, но 0x5f3759df, кажется, занимает в 3 раза больше времени, чем Math.Sqrt.Я только что провел тестирование с таймерами.Math.Sqrt в циклическом доступе к предварительно рассчитанным массивам дает около 80 мс.0x5f3759df при тех же обстоятельствах привел к 180 + мс

. Тест проводился несколько раз с использованием оптимизаций режима выпуска.

0 голосов
/ 13 октября 2015
private double operand1;  

private void squareRoot_Click(object sender, EventArgs e)
{ 
    operand1 = Math.Sqrt(operand1);
    this.textBox1.Text = operand1.ToString();
}
0 голосов
/ 04 декабря 2010
var result = Math.Sqrt((double)value);
...