Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |

31.05.2007, 19:03
|
|
Участник форума
Регистрация: 10.01.2007
Сообщений: 140
Провел на форуме: 246020
Репутация:
105
|
|
JavaScript >> Delphi
Доброго впемени суток 
Я пишу программу и столкнулся с проблемой,
нашел исходники на java а разобраться в нём что то не смог.
Помогите Plz перевести из java в Delphi.
Вот собсна исходник на java который нужно переписать под Delphi:
Код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from http://astroclub.biz -->
<HTML><HEAD><TITLE>Текущее среднее звёздное время</TITLE>
<BODY onselectstart="return false" bgColor=#000066 onload=starClock()>
<script language=JavaScript>
<!--
function starClock()
{
var sidTimer = new Date();
var year = sidTimer.getYear();
var month = sidTimer.getMonth()+1;
var date = sidTimer.getDate();
var hour = sidTimer.getHours();
var minute = sidTimer.getMinutes();
var second = sidTimer.getSeconds();
var zone = -sidTimer.getTimezoneOffset()/60;/*автополучение временной зоны с учётом летнего времени*/
var uhour = hour - zone;
var long = 35.167; /*долгота в градусах места, для которого вычисляется текущее среднее звёздное время*/
var lt = hour + minute/60 + second/3600;
if (year<1900) year=year+1900
if (month<=2) {month=month+12; year=year-1}
var A = Math.floor(year/100);
var B = 2 - A + Math.floor(A/4);
var jdn = Math.floor(365.25*(year+4716)) + Math.floor(30.6001*(month+1)) + date +B - 1524.5 - zone/24;
var jd = jdn + (hour + minute/60 + second/3600)/24;
var T = (jdn - 2451545.0)/36525;
var sidtn = 280.46061837 + 360.98564736629*(jdn - 2451545.0) + 0.000387933*T*T - T*T*T/38710000;
sidtn = (sidtn)%360;
if (sidtn < 0) {sidtn = sidtn +360;}
sidtn = sidtn/15;
var st = sidtn + lt*1.00273790935 + long/15;
st = (st + 24)%24;
var sth = Math.floor(st);
var stm = (st - sth)*60;
var stmo = Math.floor(stm);
var sts = (stm-stmo)*60;
sts = Math.floor(sts);
if (sth < 10) {sth = "0" + sth;}
if (stmo < 10) {stmo = "0" + stmo;}
if (sts < 10) {sts = "0" + sts;}
var stt = sth + "h" +stmo + "m" +sts +"s";
document.sidtimer.startm.value = stt;
if (hour < 10) {hour = "0" + hour;}
if (minute < 10) {minute = "0" + minute;}
if (second < 10) {second = "0" + second;}
var sysdate = hour + ":" + minute + ":" + second;
document.sidtimer.stime.value = sysdate;
if (hour < 3) {uhour = uhour + 24;}
if (uhour > 23) {uhour = uhour - 24;}
if (uhour < 10) {uhour = "0" + uhour;}
var ut = uhour + ":" + minute + ":" + second;
document.sidtimer.utime.value = ut;
var jd1 = Math.floor(jd);
var jd2 = (jd - jd1)*100000;
jd2 = Math.floor(jd2);
document.sidtimer.yuldate.value = jd1 + "." + jd2;
window.setTimeout("starClock()", 1000)
}
// -->
</SCRIPT>
<LINK rel="STYLESHEET" href="css/styles.css">
<FORM name=sidtimer>
<TABLE border=0>
<CAPTION>
<span class=h2>Текущее местное и среднее звёздное время для Запорожья (ш: 47° 48' д: 35h 10m)</span></CAPTION>
<TBODY>
<TR>
<TD>
<INPUT size=14 name=stime>
</TD>
<TD><span class=h1>Локальное время (LT)</span></TD>
</TR>
<TR>
<TD>
<INPUT size=14 name=utime>
</TD>
<TD><span class=h2>Всемирное время (UT)</span></TD>
</TR>
<TR>
<TD>
<INPUT size=14 name=yuldate>
</TD>
<TD><span class=h3>Юлианская дата (JD)</span></TD>
</TR>
<TR>
<TD>
<INPUT size=14 name=startm>
</TD>
<TD><span class=h6>Среднее звездное время (ST)</span></TD>
</TR>
</TBODY>
</TABLE>
</FORM></BODY></HTML>
<STYLE type="text/css">
<!--
Код:
FORM {
font-family: "Verdana", "Verdana", "Tahoma", "Arial", "Helvetica";
font-size: 7pt;
font-weight : normal;
color: #080000;
text-decoration: none;
background-color: #000066;
background: #000066;
}
BODY {
font-weight : normal;
color: #00FFFF;
text-decoration: none;
background-color: #000066;
background: #000066;
}
span.H1 {
font-family: "Verdana", "Verdana", "Tahoma", "Arial", "Helvetica";
font-size: 14pt;
font-weight : normal;
color: #FFFFCC;
text-decoration: none;
}
span.H2 {
font-family: "Verdana", "Verdana", "Tahoma", "Arial", "Helvetica";
font-size: 12pt;
font-weight : normal;
color: #FFCC00;
text-decoration: none;
}
span.H3 {
font-family: "MS Sans Serif", "Verdana", "Tahoma", "Arial", "Helvetica";
font-size: 12pt;
font-weight : bold;
color: #FFCC00;
text-decoration: none;
}
span.H4 {
font-family: "MS Sans Serif", "Verdana", "Tahoma", "Arial", "Helvetica";
font-size: 12pt;
font-weight : normal;
color: #FFFFCC;
text-decoration: none;
}
span.H5 {
font-family: "MS Sans Serif", "Verdana", "Tahoma", "Arial", "Helvetica";
font-size: 12pt;
font-weight : normal;
color: #CCFFCC;
text-decoration: none;
}
span.H6 {
font-family: "MS Sans Serif", "Verdana", "Tahoma", "Arial", "Helvetica";
font-size: 10pt;
font-weight : normal;
color: #00FF66;
text-decoration: none;
}
INPUT {
font-family: "Verdana", "Verdana", "Tahoma", "Arial", "Helvetica";
font-size: 10pt;
font-weight : normal;
color: #FFFFFF;
text-decoration: none;
background-color: #000066;
background: #000066;
}
-->
</STYLE>
|
|
|

31.05.2007, 19:16
|
|
Постоянный
Регистрация: 11.03.2007
Сообщений: 581
Провел на форуме: 4172659
Репутация:
646
|
|
Смысл переводить? Хочешь добиться такого функционала в Делфи, юзай таймер и функции Date, Time, DateToStr из SysUtils.
|
|
|

31.05.2007, 19:17
|
|
Участник форума
Регистрация: 09.02.2004
Сообщений: 122
Провел на форуме: 1089794
Репутация:
134
|
|
Проще будет на C++ перевести, т.к. синтаксис похожий...
|
|
|

31.05.2007, 19:21
|
|
Участник форума
Регистрация: 10.01.2007
Сообщений: 140
Провел на форуме: 246020
Репутация:
105
|
|
половину перевел, но затруднения вот тут:
sidtn = (sidtn)%360;
Что значит %?
и я так понял что
stt = sth + "h" +stmo + "m" +sts +"s";<=>stt := sth + 'h' +stmo + 'm' +sts +'s';
Верно?
|
|
|

31.05.2007, 19:32
|
|
Постоянный
Регистрация: 11.03.2007
Сообщений: 581
Провел на форуме: 4172659
Репутация:
646
|
|
% это остаток от деления
|
|
|

31.05.2007, 21:02
|
|
Pagan Heart
Регистрация: 12.08.2004
Сообщений: 3,791
Провел на форуме: 6490435
Репутация:
2290
|
|
Тут нету джавы.
|
|
|

31.05.2007, 21:10
|
|
Members of Antichat - Level 5
Регистрация: 05.04.2006
Сообщений: 1,066
Провел на форуме: 3493315
Репутация:
1228
|
|
Сообщение от nerezus
Тут нету джавы.
+1
пора уже различать, Java и JavaScript
|
|
|

31.05.2007, 22:13
|
|
Флудер
Регистрация: 27.12.2005
Сообщений: 2,372
Провел на форуме: 5339610
Репутация:
4360
|
|
название топика отредактировано
nerezus, nc.STRIEM +1
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|