Удомельский форум

Удомельский форум (http://second.udomlya.ru/uf/index.php)
-   Software (http://second.udomlya.ru/uf/forumdisplay.php?f=23)
-   -   Office (http://second.udomlya.ru/uf/showthread.php?t=16427)

BER 19.04.2009 22:46

Office
 
Говорят, под Excel существуют приложения, где можно рассчитывать время восхода/захода солнца для конкретной местности. В инете не нашел (вероятно, плохо искал). Если у кого есть такое приложение или адрес, где можно взять, поделитесь, пожалуйста.

BER 05.05.2009 23:32

Excel 2007 может корректно работать в среде Office 2003?

Messiah 06.05.2009 15:13

Вложений: 1
Что значит в среде 2003? Совершенно непонятно...он условно говоря сам по себе существует, другой вопрос о совместимости приложений выполненных в разных средах, либо 2003 либо 2007, но это другой вопрос. Также непонятен смысл "приложения" для Excel...для Excel возможно написание формул и их цепочек по определённым правилам, а здесь всё уже зависит от сложности реализации алгоритма. Вот в частности по расчёту времени восхода и заката, будет примерно так:
// sunrise.cpp : Пример использования функции sun_rise_set
//

#include <windows.h>
#include <time.h>
#include <math.h>
#include <conio.h>
#include "sun.h"

int main()
{
time_t m_time;// для текущего времени
time_t m_time_gmt;// для времени по гринвичу
double t_rise = 0;//время восхода солнца (в часах)
double t_set= 0;//время захода солнца (в часах)
double La,Lo;//широта и долгота положения на земле (в градусах)
char text1[60];// выходной текст ANSI
char text2[60];// выходной текст DOS
struct tm *tm_time;

// определяем текущее время (по гринвичу)
time(&m_time);
tm_time = gmtime( &m_time); // заполняем структуру со временем GMT
m_time_gmt = mktime(tm_time); // узнаем время по гринвичу (GMT)

// определяем часовой сдвиг от гринвича
double time_zone;
time_zone = difftime(m_time,m_time_gmt)/3600.;

//Координаты Москвы
La = 55+45/60.;
Lo = 37+35/60.;

// определяем текущее времена восхода и захода сегодня (местное время)
int ret = sun_rise_set(tm_time,time_zone,La,Lo,&t_rise,&t_se t);

// вывод на экран
sprintf(text1,"Сегодня: (в Москве)\n\r");
CharToOem (text1,text2);
printf(text2);
if (ret==-1)// не всходит
{
sprintf(text1,"Солнце не всходит");
CharToOem (text1,text2);
printf(text2);
}
if (ret==-2)// не заходит
{
sprintf(text1,"Солнце не заходит");
CharToOem (text1,text2);
printf(text2);
}
if (ret==1)// все нормально
{
sprintf(text1,"время восхода солнца %d ч. %d мин.\n\r",(int)t_rise,(int)((t_rise-floor(t_rise))*60));
CharToOem (text1,text2);
printf(text2);

sprintf(text1,"время захода солнца %d ч. %d мин.\n\r",(int)t_set,(int)((t_set-floor(t_set))*60));
CharToOem (text1,text2);
printf(text2);
}
// ждем, когда нажмем на любую клавишу
getch();

return 0;
}

В аттаче к этому посту, скомпилированный ехе файл, для расчёта. Справедливости ради надо отметить, что он реализован в формате double, но перевод в real не должен сильно отразится на точности. А сам механизм вычисления привязан к географическим координатам данной местности, в данном примере погрешность не превышает 1-2 минут

BER 11.05.2009 22:06

Почему-то аттач не реагирует на мои попытки к нему обратиться - прав, говорит, недостаточно. :-[

Messiah 11.05.2009 23:59

Цитата:

Сообщение от BER (Сообщение 406757)
Почему-то аттач не реагирует на мои попытки к нему обратиться - прав, говорит, недостаточно. :-[

Честно говоря первый раз такое слышу, и если это действительно так, багу надо искать на своей стороне. Тем не менее выложил в ДС, вот ссылка: magnet:?xt=urn:tree:tiger:PTT6WSPIA3LO7I26RHQJ6W3N X7S2VOSQB2SEGVI&xl=48160&dn=sunrise.zip ну и для полного "счастья" ещё выложил архив у себя на сервере: http://10.0.29.1:7000/SOFT/Всячинка/sunrise.zip

BER 12.05.2009 22:49

Спасибо, я воспользовался [полным "счастьем"]

BER 16.05.2009 09:35

Excel
 
Цитата:

Сообщение от Messiah (Сообщение 404538)
В аттаче к этому посту, скомпилированный ехе файл, для расчёта

Как результаты расчета автоматически использовать в Excel для дальнейших расчетов? (вручную я мог бы занести из календаря).

Messiah 16.05.2009 12:04

Цитата:

Сообщение от ber (Сообщение 408324)
Как результаты расчета автоматически использовать в excel для дальнейших расчетов? (вручную я мог бы занести из календаря).

Честно говоря, по этим междометиям, я совсем не понимаю, что надо делать. Нельзя ли подробнее задачу изложить...

BER 16.05.2009 21:32

Excel
 
Цитата:

Сообщение от Messiah (Сообщение 408335)
Честно говоря, по этим междометиям, я совсем не понимаю, что надо делать. Нельзя ли подробнее задачу изложить...

Подробнее выглядит так: нужно расчитать некий биоритм, зависящий от времени восхода и захода солнца. Раньше я его расчитывал, вручную вводя данные из календаря, но ежедневно вручную делать это утомительно. Если в ячейках Excel автоматом появится время восхода и захода солнца, то остальной расчет - дело известной мне техники.

Messiah 16.05.2009 22:10

Цитата:

Сообщение от BER (Сообщение 408513)
Подробнее выглядит так: нужно расчитать некий биоритм, зависящий от времени восхода и захода солнца. Раньше я его расчитывал, вручную вводя данные из календаря, но ежедневно вручную делать это утомительно. Если в ячейках Excel автоматом появится время восхода и захода солнца, то остальной расчет - дело известной мне техники.

Дык если я правильно понял, то речь идёт собственно об импорте 2-х значений в Excel. Первое что приходит на ум, это вывести рассчитанные значение не на монитор, как устройство стандартного вывода, а к примеру в текстовый файл...а из него стандартными средствами в Excel и импортировать.


Текущее время: 22:27. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot