public static void Main() {
double long1 = 103.7738681;
double long2 = 103.7736419;
Console.WriteLine(distance(lat1, long1, lat2, long2).ToString());
public static double distance(double lat1, double lon1, double lat2, double lon2) {
if ((lat1 == lat2) && (lon1 == lon2)) {
double theta = lon1 - lon2;
double dist = Math.Sin(deg2rad(lat1)) * Math.Sin(deg2rad(lat2)) + Math.Cos(deg2rad(lat1)) * Math.Cos(deg2rad(lat2)) * Math.Cos(deg2rad(theta));
dist = dist * 60 * 1.1515;
public static double deg2rad(double deg) {
return (deg * Math.PI / 180.0);
public static double rad2deg(double rad) {
return (rad / Math.PI * 180.0);