java Формула Haversine (математика) Ошибка ошибки NullPointerException - PullRequest
0 голосов
/ 18 апреля 2020

Я пытаюсь создать калькулятор формулы Haversine. для получения дополнительной информации, получил: https://en.wikipedia.org/wiki/Haversine_formula

У меня есть ошибка в выводе:

longitude and latitude of home : 
20.593683 78.962883
longitude and latitude of travel destination : 
56.130367 106.346771
Exception in thread "main" java.lang.NullPointerException
at haversine.execute(test28.java:14)
at test28.main(test28.java:32)

Мой код:

import java.util.Scanner;
class haversine {
        double long1;
        double lat1;
        double long2;
        double lat2;
        haversine (Double long1, Double lat1, Double long2, Double lat2) {
                this.long1 = long1;
                this.lat1 = lat1;
                this.long2 = long2;
                this.lat2 = lat2;
        }
        double execute() {
                return Math.pow(Math.sin((lat2 - lat1)/2) ,2) + Math.cos(long1) * Math.cos(long2) * Math.pow(Math.sin((long2 - long1)/2) ,2);
        }
        double disCalc (Double exe) {
                Double radius_of_earth = 6378.1;
                return 2 * radius_of_earth * Math.asin(Math.pow(exe, 2));
        }

}
class test28 {
        public static void main(String[] args) {
                Scanner scan = new Scanner(System.in);
                System.out.println("longitude and latitude of home : ");
                double long1 = scan.nextDouble();
                double lat1 = scan.nextDouble();
                System.out.println("longitude and latitude of travel destination : ");
                double long2 = scan.nextDouble();
                double lat2 = scan.nextDouble();
                haversine obj = new haversine(long1, lat1, long2, lat2);
                double exe = obj.execute();
                double distance = obj.disCalc(exe);
                System.out.println("The Distance is : " + distance);
                scan.close();


        }
}

Пожалуйста, скажите мне, в чем ошибка.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...