Вверх ↑
Этот топик читают: Гость
Ответов: 1731
Рейтинг: 68
#16: 2011-12-18 14:09:51 ЛС | профиль | цитата
[flood]Кстати, если программу после компиляции сжимать, то она занимает 1.62МБ [/flood]
карма: 1

0
Разработчик
Ответов: 26061
Рейтинг: 2120
#17: 2011-12-18 14:19:54 ЛС | профиль | цитата
Cosinus, можно подумать, что к нас сейчас харды по 2 гб, да сейчас такие флэшки уже редко кто использует
карма: 22

0
Ответов: 1535
Рейтинг: 176
#18: 2011-12-18 14:37:04 ЛС | профиль | цитата
[flood]Гы, гы, я по данному гороскопу ВОЛК. А по восточному, к тому же, Лев и Тигр (аватар намёк). Ну, прям, сплошные хищники. [/flood]
карма: 1
Не так страшна ошибка, как опасность её не заметить.

0
Ответов: 1731
Рейтинг: 68
#19: 2011-12-18 14:45:47 ЛС | профиль | цитата
nesco, [flood]я говорю, что если сделать это как "подарочное ПО", то при скачке не заставлять пол-ля долго ждать.
И в итоге программа будет весить 1.7 МБ.
Это у кого не супер-пупер выделенка которая ВОВ за 15 мин качает.
А как у простого пол-ля типа меня [/flood]
карма: 1

0
Ответов: 16884
Рейтинг: 1239
#20: 2011-12-18 14:54:12 ЛС | профиль | цитата
nesco писал(а):
а можешь свою схему сделать на дискретных элементах, а не IC
могу, все сделать можно.
Даже, nesco, выкладывал два компонента components_days.rar, но... никому не надо

карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
файлы: 1components_days.rar [2.6KB] [263]
Ответов: 67
Рейтинг: 5
#21: 2011-12-18 17:28:21 ЛС | профиль | цитата
nesco писал(а):
а можешь свою схему сделать на дискретных элементах, а не IC
а такой вариант не подходит?
code_26224.txt
карма: 1

0
файлы: 1code_26224.txt [1KB] [415]
Ответов: 16884
Рейтинг: 1239
#22: 2011-12-18 19:34:45 ЛС | профиль | цитата
10755 писал(а):
а такой вариант не подходит?
10755, а не пробовал с 2011 перейти, скажем, на 1940-й год
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 67
Рейтинг: 5
#23: 2011-12-18 19:48:21 ЛС | профиль | цитата
Tad писал(а):
с 2011 перейти, скажем, на 1940-й год
а что там? в феврале 2011 - 28 днеи, а 1940 - 29 дней показывает. Я не про ввод даты, а про перечисление сколько в каком месяце дней
------------ Дoбавленo в 19.49:
вот я панель ввода дат попробовал переделать на MonthCalendar

Add(ChildPanelEx,4451151,420,273)
{
}
BEGIN_SDK
Add(EditMultiEx,1296536,280,35)
{
EventCount=#7:onNotes|
Width=608
Height=283
VOffset=210
}
Add(Panel,14031836,357,42)
{
Width=618
Height=53
Align=2
BorderWidth=0
BevelInner=0
BevelWidth=0
}
Add(ComboBox,14428230,770,84)
{
Left=345
Top=15
Height=21
Font=[Arial,10,1,0,204]
Text=""
DataType=1
ReadOnly=0
Point(doSelect)
Point(EditText)
Point(Index)
Point(onSelect)
link(onSelect,7043639:doWork2,[(859,104)(859,299)])
}
Add(Label,7918268,287,42)
{
Left=295
Top=17
Width=41
Height=20
Font=[Arial,10,1,0,204]
Caption="День:"
Alignment=1
}
Add(ComboBox,251133,357,84)
{
Left=185
Top=15
Width=100
Height=21
Font=[Arial,10,1,0,204]
Strings=#0:|6:Январь|7:Февраль|4:Март|6:Апрель|3:Май|4:Июнь|4:Июль|6:Август|8:Сентябрь|7:Октябрь|6:Ноябрь|7:Декабрь|
Text=""
ReadOnly=0
Point(Index)
Point(doSelect)
link(onClick,2305200:doWork2,[(399,97)(399,160)])
}
Add(Label,7804424,301,42)
{
Left=125
Top=17
Height=20
Font=[Arial,10,1,0,204]
Caption="Месяц:"
Alignment=1
}
Add(ComboBox,4028433,420,84)
{
Left=50
Top=15
Width=65
Height=21
Font=[Arial,10,1,0,204]
Strings=#0:|4:1935|4:1936|4:1937|4:1938|4:1939|4:1940|4:1941|4:1942|4:1943|4:1944|4:1945|4:1946|4:1947|4:1948|4:1949|4:1950|4:1951|4:1952|4:1953|4:1954|4:1955|4:1956|4:1957|4:1958|4:1959|4:1960|4:1961|4:1962|4:1963|4:1964|4:1965|4:1966|4:1967|4:1968|4:1969|4:1970|4:1971|4:1972|4:1973|4:1974|4:1975|4:1976|4:1977|4:1978|4:1979|4:1980|4:1981|4:1982|4:1983|4:1984|4:1985|4:1986|4:1987|4:1988|4:1989|4:1990|4:1991|4:1992|4:1993|4:1994|4:1995|4:1996|4:1997|4:1998|4:1999|4:2000|4:2001|4:2002|4:2003|4:2004|4:2005|4:2006|4:2007|4:2008|4:2009|4:2010|4:2011|4:2012|
Text=""
DataType=1
ReadOnly=0
Point(doSelect)
Point(EditText)
link(onClick,2305200:doWork1,[(467,97)])
}
Add(Label,3752545,315,42)
{
Left=10
Top=17
Width=31
Height=20
Font=[Arial,10,1,0,204]
Caption="Год:"
Alignment=1
}
Add(Button,6432424,315,259)
{
Left=415
Top=10
Width=185
Height=30
Font=[Arial,10,1,0,204]
Enabled=1
TabOrder=-1
Caption="Какой Вы зверь?"
Point(doEnabled)
link(onClick,2170766:doGetString,[])
}
Add(StrList,2170766,357,217)
{
Strings=#0:|3:Jan|3:Feb|3:Mar|3:Apr|3:May|3:Jun|3:Jul|3:Aug|3:Sep|3:Oct|3:Nov|3:Dec|
Point(doGetString)
Point(String)
Point(onGetString)
Point(IdxToSelect)
link(onGetString,8953247:doString,[(411,230)(411,251)])
link(IdxToSelect,11421956:Var2,[])
}
Add(FormatStr,8953247,434,245)
{
DataCount=3
Mask="SELECT note FROM notes WHERE
Idx = (SELECT noteidx FROM animals WHERE
Idx = (SELECT CASE
WHEN (SELECT %2 FROM indexes WHERE Year = %1) + %3 > 60
THEN (SELECT %2 FROM indexes WHERE Year = %1) + %3 - 60
ELSE (SELECT %2 FROM indexes WHERE Year = %1) + %3
END
)
)
"
link(onFString,14519255:doQuery,[])
link(Str1,15844792:Var2,[])
link(Str3,14428230:EditText,[(454,202)(790,202)])
}
Add(DSC_Query,14519255,805,245)
{
DSManager="parent.hor"
link(onQuery,1296536:onNotes,[])
}
Add(InlineCode,14207354,770,42)
{
WorkPoints=#6:doTest|
EventPoints=#3:Day|4:Mess|
DataPoints=#5:Month|4:Year|
Code=#15:unit HiAsmUnit;|12:// Autor Tad|0:|9:interface|0:|21:uses kol,Share,Debug;|0:|4:type|28: THiAsmClass = class(TDebug)|10: private|0:|9: public|33: Month,Year,Day,Mess:THI_Event;|49: Procedure doTest(var _Data:TData; Index:Word);|0:|5: end;|0:|14:implementation|29:Procedure THiAsmClass.doTest;|15:var Y,M,i:word;|23:d:array[1..12] of word;|5:begin|24:Y:=toIntegerEvent(Year);|49:If Y=0 then begin _hi_onEvent(Mess,0); Exit; end;|25:M:=toIntegerEvent(Month);|49:If M=0 then begin _hi_onEvent(Mess,0); Exit; end;|9:d[1]:=31;|28:d[2]:=28+ord(IsLeapYear(Y));|9:d[3]:=31;|9:d[4]:=30;|9:d[5]:=31;|9:d[6]:=30;|9:d[7]:=31;|9:d[8]:=31;|9:d[9]:=30;|10:d[10]:=31;|10:d[11]:=30;|10:d[12]:=31;|39:for i:=1 to d[M] do _hi_onEvent(day,i);|20:_hi_onEvent(Mess,1);|4:end;|4:end.|
}
Add(GetDataEx,11421956,371,147)
{
link(Data,251133:Index,[])
}
Add(GetDataEx,15844792,434,140)
{
link(Data,4028433:EditText,[])
}
Add(HubEx,2305200,463,154)
{
link(onEvent,11374887:doEvent1,[])
}
Add(Hub,11374887,483,154)
{
link(onEvent1,14428230:doClear,[(516,160)(516,97)])
link(onEvent2,8718352:doEnumDays,[(515,167)(515,174)])
}
Add(Memory,7192578,728,42)
{
Point(Data)
}
Add(DoData,1399740,721,126)
{
link(onEventData,14428230:doSelect,[])
}
Add(MonthCalendar,8718352,532,168)
{
Holidays=[]
link(onDay,3061480:doCompare,[])
link(Year,4880178:Var2,[])
link(Month,12493112:Var2,[])
}
Add(If_else,3061480,581,168)
{
Type=5
Op2=String()
link(onTrue,16347274:doCompare,[])
link(onFalse,6961229:doWork2,[(624,181)(624,265)])
link(Op1,12493112:Var3,[(587,152)])
}
Add(If_else,16347274,630,168)
{
Type=5
Op2=String()
link(onTrue,6827806:doEvent1,[(674,174)(674,125)])
link(onFalse,6961229:doWork1,[(674,181)])
link(Op1,4880178:Var3,[(636,145)])
}
Add(GetDataEx,12493112,539,147)
{
Angle=3
link(Data,11421956:Var3,[])
}
Add(GetDataEx,4880178,532,140)
{
Angle=3
link(Data,15844792:Var3,[])
}
Add(ChanelToIndex,15950329,714,259)
{
Count=1
link(onIndex,7043639:doWork1,[(760,265)])
}
Add(HubEx,6961229,670,259)
{
link(onEvent,15950329:doWork1,[])
}
Add(HubEx,7043639,756,293)
{
Angle=2
link(onEvent,6432424:doEnabled,[(301,299)(301,265)])
}
Add(Hub,6827806,693,119)
{
link(onEvent1,14428230:doAdd,[(716,125)(716,90)])
link(onEvent2,1399740:doData,[])
}
END_SDK


но расчитывается только не выше 2004 года
карма: 1

1
Голосовали:nesco
Разработчик
Ответов: 26061
Рейтинг: 2120
#24: 2011-12-18 20:17:23 ЛС | профиль | цитата
10755 писал(а):
но расчитывается только не выше 2004 года

Так заложено в самой базе, нет данных ниже 1935 и выше 2004

Вот мой последний вариант с учетом всего, что выкладывали -- horoscope_animals_4.sha
карма: 22

0
файлы: 1horoscope_animals_4.sha [9.9KB] [270]
Ответов: 16884
Рейтинг: 1239
#25: 2011-12-18 20:43:16 ЛС | профиль | цитата
nesco писал(а):
Так заложено в самой базе, нет данных ниже 1935 и выше 2004
Значит нужно найти формулу рассчета.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26061
Рейтинг: 2120
#26: 2011-12-18 22:34:03 ЛС | профиль | цитата
Tad писал(а):
Значит нужно найти формулу рассчета

Я не нашел. Может кто поможет найти
карма: 22

0
Ответов: 67
Рейтинг: 5
#27: 2011-12-18 23:44:24 ЛС | профиль | цитата
nesco, а не этот ли сайт http://ns1.ip-ip.org/astrolog/animals-horoscope/index.htm использован для программы гороскопа? В Таблице 1 видна закономерность, если начать с январь 1934 года и к числу месяца прибавить количество дней в месяце, а потом mod 60, то получится число февраля, и далее, к числу февраля прибавить количество дней в феврале и опять mod 60, то будет число марта, и т.д... Осталось только вывести эту формулу
карма: 1

0
Разработчик
Ответов: 26061
Рейтинг: 2120
#28: 2011-12-18 23:57:44 ЛС | профиль | цитата
10755 писал(а):
а не этот ли сайт

Я его видел, но я же не идиот набивать данные вручную, потому нашел сайт, где эти данные были в текстовом формате, после чего, посредством несложных манипуляций, превратил их в формат, понятный Sqliteadmin-у. RTF делал уже сам в Ворде, но из тех же текстовых данных.
10755 писал(а):
Осталось только вывести эту формулу

Народ! Кто умеет выводит формулы, просьба помочь
карма: 22

0
Ответов: 8887
Рейтинг: 823
#29: 2011-12-19 00:44:18 ЛС | профиль | цитата
nesco, дата 01 января 1978 г имеет зверя "0" (гепард) (начинаем, конечно, с "0", а не с "1" ), все остальные каждые 60 повторяются полное повторение цикла через 48699 лет (Тут очень пригодится компонент от Tad-а по разнице дат.)
карма: 19

0
Ответов: 16884
Рейтинг: 1239
#30: 2011-12-19 01:27:46 ЛС | профиль | цитата
Zn= (Trunc(DateReal на 1-е число месяца) mod 60) + 14
If Zn>=60 then Zn= Zn-60
------------ Дoбавленo в 01.27:
Add(MainForm,2953706,70,105)
{
Width=305
Height=148
link(onCreate,11524923:doWork2,[])
}
Add(ChildGroupBox,11524923,140,112)
{
}
BEGIN_SDK
Add(EditMulti,7641063,21,21)
{
EventCount=1
WorkCount=2
VarCount=1
Width=524
Height=389
HOffset=189
link(doWork1,11069262:doConvert,[])
link(doWork2,11954632:doEvent1,[(31,34)(31,160)])
link(Var1,435627:GetData,[])
}
Add(GroupBox,9149858,42,266)
{
Width=234
Height=45
Caption="--- Год ---------- Месяц ----------- День ----- Сброс "
}
Add(ComboBox,7898108,210,161)
{
Left=10
Top=15
Height=21
Text=""
Point(EditText)
Point(doSelect)
Point(doSelectString)
link(onClick,5434630:doEvent1,[(254,174)(254,157)(350,157)(350,167)])
}
Add(ComboBox,1714071,301,161)
{
Left=66
Top=15
Width=75
Height=21
Strings=#0:|6:января|7:февраля|5:марта|6:апреля|3:мая|4:июня|4:июля|7:августа|8:сентября|7:октября|6:ноября|7:декабря|0:|
Text=""
ReadOnly=0
Point(EditText)
Point(Index)
Point(doSelect)
link(onClick,5434630:doEvent2,[])
}
Add(ComboBox,12280000,448,273)
{
Left=143
Top=15
Width=45
Height=21
Text=""
ReadOnly=0
Point(EditText)
Point(doSelect)
}
Add(Button,12356002,42,203)
{
Left=190
Top=15
Width=35
TabOrder=-1
Caption="х"
Data=Integer(0)
link(onClick,10032148:doEvent1,[])
}
Add(InlineCode,14207354,315,273)
{
WorkPoints=#6:doTest|
EventPoints=#3:Day|4:Mess|
DataPoints=#4:Year|5:Month|
Code=#15:unit HiAsmUnit;|12:// Autor Tad|0:|9:interface|0:|21:uses kol,Share,Debug;|0:|4:type|28: THiAsmClass = class(TDebug)|10: private|0:|9: public|33: Month,Year,Day,Mess:THI_Event;|49: Procedure doTest(var _Data:TData; Index:Word);|0:|5: end;|0:|14:implementation|29:Procedure THiAsmClass.doTest;|24: var Y, M, i, d, f:word;|15: s:string; |15:Label brk; |5:begin|6: f:=0;|25: Y:=toIntegerEvent(Year);|23: If Y=0 then GOTO brk;|26: M:=toIntegerEvent(Month);|23: If M=0 then GOTO brk;|7: f:=1; |9: d := 31;|10: Case M of|41: 2: d := 28 + ord(IsLeapYear(Y));|20: 4,6,9,11: d := 30;|6: end; |19: for i:=1 to d do |9: begin|19: s:=int2Str(i);|28: If i<10 then s:='0'+s; |24: _hi_onEvent(day,s);|8: end;|26:brk: _hi_onEvent(Mess,f);|4:end;|4:end.|
link(Day,4559508:doEvent1,[])
link(Mess,7641063:onEvent1,[(362,286)(362,27)])
link(Year,5568946:Var3,[(321,257)])
link(Month,13961898:Var2,[])
}
Add(DateConvertor,11069262,126,21)
{
Point(Year)
Point(Month)
Point(Day)
link(onResult,15695536:doEvent1,[(170,27)(170,67)(43,67)(43,76)])
}
Add(Hub,10032148,133,203)
{
OutCount=4
link(onEvent1,7898108:doSelect,[])
link(onEvent2,8886608:doWork2,[(172,216)(172,223)])
link(onEvent3,3305590:doWork2,[(165,223)(165,251)])
link(onEvent4,9896636:doWork3,[(158,230)(158,295)(298,295)])
}
Add(Hub,5434630,357,161)
{
InCount=2
link(onEvent1,3305590:doWork1,[(389,167)])
link(onEvent2,9896636:doWork1,[(383,174)(383,226)(298,226)])
}
Add(HubEx,3305590,385,245)
{
link(onEvent,12280000:doClear,[(439,251)(439,286)])
}
Add(DoData,10532748,126,112)
{
link(onEventData,7898108:doSelectString,[(189,118)(189,216)])
link(Data,11069262:Year,[])
}
Add(DoData,342124,133,70)
{
link(onEventData,8886608:doWork1,[(179,76)])
link(Data,11069262:Month,[])
}
Add(DoData,16588820,406,315)
{
link(onEventData,12280000:doSelect,[])
link(Data,11069262:Day,[(412,63)(146,63)])
}
Add(HubEx,8886608,175,217)
{
link(onEvent,1714071:doSelect,[(288,223)(288,209)])
}
Add(Hub,15695536,56,70)
{
OutCount=3
link(onEvent1,342124:doData,[])
link(onEvent2,10532748:doData,[(112,83)(112,118)])
link(onEvent3,9896636:doWork2,[(105,90)(105,279)])
}
Add(Hub,4559508,378,273)
{
link(onEvent1,12280000:doAdd,[])
link(onEvent2,16588820:doData,[(399,286)(399,321)])
}
Add(For,14665532,126,161)
{
Start=1900
End=2100
link(onEvent,771734:doWork2,[])
}
Add(HubEx,9896636,294,273)
{
link(onEvent,14207354:doTest,[])
}
Add(Hub,11954632,42,154)
{
link(onEvent1,5957290:doData,[])
link(onEvent2,14665532:doFor,[])
}
Add(DoData,5957290,70,154)
{
Data=String()
link(onEventData,771734:doWork1,[(172,160)])
}
Add(HubEx,771734,168,161)
{
link(onEvent,7898108:doAdd,[])
}
Add(DateConvertor,8676298,308,350)
{
Mode=8
Format="yyyy-MM-dd"
Point(Data)
link(onResult,435627:doData,[(350,356)(350,389)(198,389)(198,356)])
}
Add(GetDataEx,5568946,259,252)
{
Angle=3
link(Data,7898108:EditText,[(230,257)])
}
Add(GetDataEx,13961898,322,231)
{
link(Data,1714071:Index,[])
}
Add(EventFromData,435627,210,350)
{
link(onEvent,15809865:doString,[])
}
Add(FormatStr,15809865,259,350)
{
DataCount=3
Mask="%1-%2-%3"
Point(FString)
link(onFString,8676298:doConvert,[])
link(Str1,5568946:Var2,[])
link(Str2,13961898:Var1,[(272,236)])
link(Str3,12280000:EditText,[(279,338)(468,338)])
}
END_SDK
Add(Button,2032775,70,175)
{
Left=5
Top=70
Caption="Счет"
link(onClick,4400874:doOperation,[])
}
Add(Label,9018408,406,175)
{
Left=225
Top=75
}
Add(Math,4400874,140,175)
{
OpType=8
ResultType=0
link(onResult,15261910:doOperation,[])
link(Op1,11524923:Var1,[])
link(Op2,1362054:Text,[(153,152)(188,152)])
}
Add(Edit,1362054,182,112)
{
Left=85
Top=70
Text="60"
}
Add(Math,15261910,189,175)
{
Op2=14
ResultType=0
link(onResult,12327865:doCompare,[])
}
Add(If_else,12327865,259,175)
{
Type=4
Op2=Integer(60)
link(onTrue,4033361:doOperation,[])
link(onFalse,14114298:doWork3,[(382,188)])
}
Add(Math,4033361,329,175)
{
OpType=1
Op2=60
ResultType=0
link(onResult,14114298:doWork2,[])
}
Add(HubEx,14114298,378,175)
{
link(onEvent,9018408:doText,[])
}


карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
2
Голосовали:nesco, 10755
Сообщение
...
Прикрепленные файлы
(файлы не залиты)