fork download
  1. /* package whatever; // don't place package name! */
  2.  
  3. import java.util.*;
  4. import java.lang.*;
  5. import java.io.*;
  6.  
  7. /* Name of the class has to be "Main" only if the class is public. */
  8. class Ideone
  9. {
  10. static int s;
  11. public static void main (String[] args) throws java.lang.Exception
  12. {
  13. Scanner scanner = new Scanner(System.in);
  14. System.out.println("Введите количесвто точек");
  15. s = scanner.nextInt();
  16. for (int i = 0; i < s; i++) {
  17. System.out.println("Введите широту ");
  18. double dLon = 55.;
  19. System.out.println("Введите долготу ");
  20. double dLat = 66.;
  21. int zone = (int) (dLon / 6.0 + 1);
  22. double a = 6378245.0; // Большая (экваториальная) полуось
  23. double b = 6356863.019; // Малая (полярная) полуось
  24. double e2 = (Math.pow(a, 2) - Math.pow(b, 2)) / Math.pow(a, 2);
  25. double n = (a - b) / (a + b);
  26. double F = 1.0; // Масштабный коэффициент
  27. double Lat0 = 0.0;
  28. double Lon0 = (zone * 6 - 3) * Math.PI / 180;
  29. double N0 = 0.0;
  30. double E0 = zone * 1e6 + 500000.0;
  31. double Lat = dLat * Math.PI / 180.0;
  32. double Lon = dLon * Math.PI / 180.0;
  33. double sinLat = Math.sin(Lat);
  34. double cosLat = Math.cos(Lat);
  35. double tanLat = Math.tan(Lat);
  36. double v = a * F * Math.pow(1 - e2 * Math.pow(sinLat, 2), -0.5);
  37. double p = a * F * (1 - e2) * Math.pow(1 - e2 * Math.pow(sinLat, 2), -1.5);
  38. double n2 = v / p - 1;
  39. double M1 = (1 + n + 5.0 / 4.0 * Math.pow(n, 2) + 5.0 / 4.0 * Math.pow(n, 3)) * (Lat - Lat0);
  40. double M2 = (3 * n + 3 * Math.pow(n, 2) + 21.0 / 8.0 * Math.pow(n, 3)) * Math.sin(Lat - Lat0) * Math.cos(Lat + Lat0);
  41. double M3 = (15.0 / 8.0 * Math.pow(n, 2) + 15.0 / 8.0 * Math.pow(n, 3)) * Math.sin(2 * (Lat - Lat0)) * Math.cos(2 * (Lat + Lat0));
  42. double M4 = 35.0 / 24.0 * Math.pow(n, 3) * Math.sin(3 * (Lat - Lat0)) * Math.cos(3 * (Lat + Lat0));
  43. double M = b * F * (M1 - M2 + M3 - M4);
  44. double I = M + N0;
  45. double II = v / 2 * sinLat * cosLat;
  46. double III = v / 24 * sinLat * Math.pow(cosLat, 3) * (5 - Math.pow(tanLat, 2) + 9 * n2);
  47. double IIIA = v / 720 * sinLat * Math.pow(cosLat, 5) * (61 - 58 * Math.pow(tanLat, 2) + Math.pow(tanLat, 4));
  48. double IV = v * cosLat;
  49. double V = v / 6 * Math.pow(cosLat, 3) * (v / p - Math.pow(tanLat, 2));
  50. double VI = v / 120 * Math.pow(cosLat, 5) * (5 - 18 * Math.pow(tanLat, 2) + Math.pow(tanLat, 4) + 14 * n2 - 58 * Math.pow(tanLat, 2) * n2);
  51. double N = (E0 + IV * (Lon - Lon0) + V * Math.pow(Lon - Lon0, 3) + VI * Math.pow(Lon - Lon0, 5)) * 0.00001;
  52. double E = ((E0 + IV * (Lon - Lon0) + V * Math.pow(Lon - Lon0, 3) + VI * Math.pow(Lon - Lon0, 5)) + 2) * 0.00001;
  53. int W = (int) N;
  54. System.out.println(Arrays.toString(zapis(W)));
  55. //C = (int) E;
  56. System.out.println("Широта: " + dLat);
  57. System.out.println("Долгота: " + dLon);
  58. System.out.println("Северное смещение: " + N + " В метрах");
  59. System.out.println("Восточное смещение:" + E + " В метрах");
  60. }
  61. }
  62. public static int[] zapis(int W) {
  63. int[] a = new int[s];
  64. for (int i = 0; i < a.length; i++) {
  65. a[i] = W;
  66. }
  67. return a;
  68.  
  69. }
  70. }
Success #stdin #stdout 0.06s 711680KB
stdin
22 55 5
stdout
Введите количесвто точек
Введите широту 
Введите долготу 
[104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104]
Широта:            66.0
Долгота:           55.0
Северное смещение: 104.09201378403763 В метрах
Восточное смещение:104.09203378403764 В метрах
Введите широту 
Введите долготу 
[104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104]
Широта:            66.0
Долгота:           55.0
Северное смещение: 104.09201378403763 В метрах
Восточное смещение:104.09203378403764 В метрах
Введите широту 
Введите долготу 
[104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104]
Широта:            66.0
Долгота:           55.0
Северное смещение: 104.09201378403763 В метрах
Восточное смещение:104.09203378403764 В метрах
Введите широту 
Введите долготу 
[104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104]
Широта:            66.0
Долгота:           55.0
Северное смещение: 104.09201378403763 В метрах
Восточное смещение:104.09203378403764 В метрах
Введите широту 
Введите долготу 
[104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104]
Широта:            66.0
Долгота:           55.0
Северное смещение: 104.09201378403763 В метрах
Восточное смещение:104.09203378403764 В метрах
Введите широту 
Введите долготу 
[104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104]
Широта:            66.0
Долгота:           55.0
Северное смещение: 104.09201378403763 В метрах
Восточное смещение:104.09203378403764 В метрах
Введите широту 
Введите долготу 
[104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104]
Широта:            66.0
Долгота:           55.0
Северное смещение: 104.09201378403763 В метрах
Восточное смещение:104.09203378403764 В метрах
Введите широту 
Введите долготу 
[104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104]
Широта:            66.0
Долгота:           55.0
Северное смещение: 104.09201378403763 В метрах
Восточное смещение:104.09203378403764 В метрах
Введите широту 
Введите долготу 
[104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104]
Широта:            66.0
Долгота:           55.0
Северное смещение: 104.09201378403763 В метрах
Восточное смещение:104.09203378403764 В метрах
Введите широту 
Введите долготу 
[104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104]
Широта:            66.0
Долгота:           55.0
Северное смещение: 104.09201378403763 В метрах
Восточное смещение:104.09203378403764 В метрах
Введите широту 
Введите долготу 
[104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104]
Широта:            66.0
Долгота:           55.0
Северное смещение: 104.09201378403763 В метрах
Восточное смещение:104.09203378403764 В метрах
Введите широту 
Введите долготу 
[104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104]
Широта:            66.0
Долгота:           55.0
Северное смещение: 104.09201378403763 В метрах
Восточное смещение:104.09203378403764 В метрах
Введите широту 
Введите долготу 
[104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104]
Широта:            66.0
Долгота:           55.0
Северное смещение: 104.09201378403763 В метрах
Восточное смещение:104.09203378403764 В метрах
Введите широту 
Введите долготу 
[104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104]
Широта:            66.0
Долгота:           55.0
Северное смещение: 104.09201378403763 В метрах
Восточное смещение:104.09203378403764 В метрах
Введите широту 
Введите долготу 
[104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104]
Широта:            66.0
Долгота:           55.0
Северное смещение: 104.09201378403763 В метрах
Восточное смещение:104.09203378403764 В метрах
Введите широту 
Введите долготу 
[104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104]
Широта:            66.0
Долгота:           55.0
Северное смещение: 104.09201378403763 В метрах
Восточное смещение:104.09203378403764 В метрах
Введите широту 
Введите долготу 
[104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104]
Широта:            66.0
Долгота:           55.0
Северное смещение: 104.09201378403763 В метрах
Восточное смещение:104.09203378403764 В метрах
Введите широту 
Введите долготу 
[104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104]
Широта:            66.0
Долгота:           55.0
Северное смещение: 104.09201378403763 В метрах
Восточное смещение:104.09203378403764 В метрах
Введите широту 
Введите долготу 
[104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104]
Широта:            66.0
Долгота:           55.0
Северное смещение: 104.09201378403763 В метрах
Восточное смещение:104.09203378403764 В метрах
Введите широту 
Введите долготу 
[104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104]
Широта:            66.0
Долгота:           55.0
Северное смещение: 104.09201378403763 В метрах
Восточное смещение:104.09203378403764 В метрах
Введите широту 
Введите долготу 
[104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104]
Широта:            66.0
Долгота:           55.0
Северное смещение: 104.09201378403763 В метрах
Восточное смещение:104.09203378403764 В метрах
Введите широту 
Введите долготу 
[104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104]
Широта:            66.0
Долгота:           55.0
Северное смещение: 104.09201378403763 В метрах
Восточное смещение:104.09203378403764 В метрах