| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Для новичков > Программа вычисления восхода и захода солнца |
| Автор: lvovitch 13.2.2012, 12:31 |
| Добрый день! нашел такую программу в интернете, скомпилировал, но она считает неправильно. Причем исходник этой программы вроди лежит во всех справочниках и т.д. То есть по идее с ней должно быть все нормально. Вот тут например: http://www.cyberguru.ru/delphi-sources/algorithms/algoritm-dlya-opredeleniya-voskhoda/zakhoda-solntsa-i-luny.html Ввожу координаты Москвы 55 широта 37 долгота. Но вычисляет явно с ошибкой. Может быть кто-нибудь пробовл эту программу? Может я ее криво скомпелировал? Или есть еще какая-нибудь программа подобная? Во вложении то, что у меня получилось скомпелировать. |
| Автор: Фантом 13.2.2012, 17:12 |
| Какой часовой пояс вводили? И что значит "считает неправильно" - с чем сравнивали? |
| Автор: lvovitch 13.2.2012, 21:54 | ||
я ввел часовой пояс 4. вот что у меня получается(на картинке) http://s1.ipicture.ru/uploads/20120213/DMGkw89R.png Сравниваю с википедией: http://ru.wikipedia.org/wiki/%C2%EE%F1%F5%EE%E4_%E8_%E7%E0%F5%EE%E4_%D1%EE%EB%ED%F6%E0 |
| Автор: Фантом 13.2.2012, 22:16 |
| Похоже, что долгота там должна быть западной (если исходить из комментариев к исходнику). Соответственно, поставьте долготу "-37" и посмотрите, что получится. |
| Автор: lvovitch 13.2.2012, 22:23 | ||
не, не получается. получается так: http://s2.ipicture.ru/ |
| Автор: Фантом 14.2.2012, 08:51 |
| Ну что же, этот результат уже очень похож на правильный и отличается от него ровно на 3 часа. Похоже, что "часовая зона" тоже приспособлена к американским реалиям и это не добавка к GMT. Впрочем, если нужны моменты именно для Москвы, то можно просто прибавить три часа к обоим результатам и этим ограничиться. P.S. Да, действительно, часовой пояс там тоже отсчитывается на запад, т.е. для Москвы, по идее, должно быть "-4". Не очень понятно, правда, почему замена на "+4" меняет результат только на три часа, но тут уже можно просто подобрать нужный пояс экспериментально - так, чтобы восход 13 февраля был в 8:56. |
| Автор: lvovitch 14.2.2012, 22:02 | ||
Спасибо!!! Действительно очень похоже! Вот: http://s2.ipicture.ru/ а сложно программу исправить для России? хотелось бы сделать программу для жителец нашей строны. Что бы например житель Калининграда ввел свои широту и долготу и пояс и у него тоже все работало. |
| Автор: Фантом 14.2.2012, 23:43 |
Там надо просто скорректировать вводимые данные: поменять знак у долготы и введенную часовую зону x заменить на 5-x. Фактически добавить две строчки. |
| Автор: lvovitch 15.2.2012, 00:47 | ||
Спасибо огромное!!!! Теперь работает! http://s1.ipicture.ru/ Буду тестировать на других городах. На всякий случай выкладываю здесь переделанный исходник. |