我有一个关于并行循环的问题.我有以下代码:
public static void MultiplicateArray(double[] array, double factor)
{
for (int i = 0; i < array.Length; i++)
{
array[i] = array[i] * factor;
}
}
public static void MultiplicateArray(double[] arrayToChange, double[] multiplication)
{
for (int i = 0; i < arrayToChange.Length; i++)
{
arrayToChange[i] = arrayToChange[i] * multiplication[i];
}
}
public static void MultiplicateArray(double[] arrayToChange, double[,] multiArray, int dimension)
{
for (int i = 0; i < arrayToChange.Length; i++)
{
arrayToChange[i] = arrayToChange[i] * multiArray[i, dimension];
}
}
Run Code Online (Sandbox Code Playgroud)
现在我尝试添加并行功能: …
我想计算两个地理点的距离.这些点以经度和纬度给出.
坐标是:
第1点:36.578581,-118.291994
第2点:36.23998,-116.83171
这里有一个网站来比较结果:
http://www.movable-type.co.uk/scripts/latlong.html
这里是我从这个链接使用的代码: 计算谷歌地图V3中两点之间的距离
const double PIx = Math.PI;
const double RADIO = 6378.16;
/// <summary>
/// Convert degrees to Radians
/// </summary>
/// <param name="x">Degrees</param>
/// <returns>The equivalent in radians</returns>
public static double Radians(double x)
{
return x * PIx / 180;
}
/// <summary>
/// Calculate the distance between two places.
/// </summary>
/// <param name="lon1"></param>
/// <param name="lat1"></param>
/// <param name="lon2"></param>
/// <param name="lat2"></param>
/// <returns></returns>
public static double DistanceBetweenPlaces(double lon1, double lat1, …Run Code Online (Sandbox Code Playgroud)