Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

12 Декабрь 2017, 00:00 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Здесь можно поблагодарить участников форума Улыбка
 
   Начало   Помощь Поиск Войти Регистрация    задать вопрос  
Страниц: 1   Вниз
  Печать  
Автор Тема: Работа с градусами-минутами-секундами  (Прочитано 149 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Netlog
Новичок
*
Offline Offline

Сообщений: 13


« Стартовое сообщение: 3 Декабрь 2017, 14:20 »

Подскажите, как проще всего работать с угловыми величинами, градусы-минуты-секунды, операции простые - сложение, вычитание, умножение/деление на коэффициент
Что-то вроде такого
98°00'15"-53°45'00"
Пробовал выбирать формат Время, но 98 градусов отображается как 2. Хотя все операции проводятся верно, до того момента, пока градусов меньше 24
Записан
mikekaganski
Ветеран
*****
Offline Offline

Пол: Мужской
Расположение: Хабаровск -> Москва
Сообщений: 709


« Ответ #1: 3 Декабрь 2017, 14:25 »

Искренний совет: если Вы хотите корректно работать с единицами измерений - используйте нормальные математические пакеты, типа SMath.
Записан

С уважением,
Михаил Каганский
Netlog
Новичок
*
Offline Offline

Сообщений: 13


« Ответ #2: 3 Декабрь 2017, 14:40 »

Я нимало не против мат пакетов, но ЛибрОфис у меня стоит на каждой машине, а мат.пакет будет в лучшем случае на домашней.
Сейчас конвертирую в секунды выражением вроде =(MID(C3;1;LEN(C3)-7)*60+MID(C3;LEN(C3)-5;2))*60+MID(C3;LEN(C3)-2;2)
98°00'15" -> 352815
Громоздко, но работает же
« Последнее редактирование: 3 Декабрь 2017, 14:43 от Netlog » Записан
mikekaganski
Ветеран
*****
Offline Offline

Пол: Мужской
Расположение: Хабаровск -> Москва
Сообщений: 709


« Ответ #3: 3 Декабрь 2017, 14:48 »

Да, работает. Но использовать ГМС в вычислениях и с нормальным отображением при отсутствии нормальной поддержки будет ... нетривиальной задачей. Перевод в радианы для расчётов; правильность ввода и вывода; производительность при постоянных пересчётах; отладка выражений с несколькими угловыми величинами, каждая из которых обрабатывается формулами типа Вашей...

Можно написать свои функции типа DMS(D,M,S)->rad и обратно. Но это макросы, с соответствующими сообщениями при открытии, либо необходимость выставить небезопасный уровень безопасности (простите за каламбур), либо озаботиться развёртыванием своих макросов на разные машины. И опять же отладка, обучение пользованию этих пользовательских функций, совместимость...

Я в своё время просто развёртывал SMath на рабочие машины через AD. Может, проще уговорить админов?
Записан

С уважением,
Михаил Каганский
Netlog
Новичок
*
Offline Offline

Сообщений: 13


« Ответ #4: 3 Декабрь 2017, 14:56 »

Надо его сперва дома попробовать, а там посмотрим.
Обратное преобразование из минут в текст
=CONCATENATE(INT(D3/3600);"°";TEXT(INT((D3-INT(D3/3600)*3600)/60);"00");"'";TEXT(INT(D3-INT(D3/60)*60);"00.000");"""")
352815 -> 98°00'15,000"
Записан
JohnSUN
Капитана в тот день называли на "ты"
Гуру
*******
Offline Offline

Пол: Мужской
Расположение: Киев
Сообщений: 2 373


Помогаю людям и компьютерам понимать друг друга


WWW
« Ответ #5: 3 Декабрь 2017, 15:23 »

Громоздко, но работает же
Мне кажется, что это ещё не всё, будет ещё более громоздко - ИМХО, просится сюда ещё и MOD() для 360...
Записан

Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне
Страниц: 1   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!