Programovacie jazyky, rady, poradňa...
p4to
Expert
Príspevky: 156 Registrovaný: 17 jún 2010, 8:07
Príspevok
od používateľa p4to » 01 mar 2013, 21:46
Zdravím,
potrebujem podmienku aby vyberalo čas len od prítomnosti po prítomnosť + 60minut...
pracujem len s hodinami a minútami pričom hodiny som si premenil na minuty ... (hod*60+minut)
skusal som tuto podmienku no to mi vyberalo aj cas z intervalu zpred hodiny
vybere aj 875 napr. a to nechcem
napada vas nieco ??
diki
audiotrack
VIP
Príspevky: 25958 Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:
Príspevok
od používateľa audiotrack » 01 mar 2013, 22:12
mohol by si aj napísať čo za jazyk to je, lebo 875 do tej podmienky nespadá, iba že by to bol jazyk, ktorý vyhodnocuje logické výrazy iným štýlom, a neuzátvorkuje si to implicitne podľa logických operátorov. V skratke, skús tam pridať zátvorky:
Kód: Vybrať všetko
((aktualnyCas()>=884) && (aktualnyCas()<= 944))
ak nepomôže, máš chybu inde a nie v tejto podmienke
p4to
Expert
Príspevky: 156 Registrovaný: 17 jún 2010, 8:07
Príspevok
od používateľa p4to » 02 mar 2013, 13:44
je to actionScript , skusil som zatvorky nepomohlo
Kód: Vybrať všetko
function timeToSec():Number
{
return my_date.getHours() * 60 + my_date.getMinutes();
}
switch (true)
{
case timeToSec()>=345 && timeToSec()<= 405: myText.text += "5:45\n";
case timeToSec()>=376 && timeToSec()<= 436: myText.text += "6:16\n";
case timeToSec()>=409 && timeToSec()<= 469: myText.text += "6:49\n";
case timeToSec()>=416 && timeToSec()<= 476: myText.text += "6:56\n";
case timeToSec()>=425 && timeToSec()<= 485: myText.text += "7:05\n";
case timeToSec()>=465 && timeToSec()<= 525: myText.text += "7:45\n";
case timeToSec()>=511 && timeToSec()<= 571: myText.text += "8:31\n";
case timeToSec()>=529 && timeToSec()<= 589: myText.text += "8:49\n";
case timeToSec()>=545 && timeToSec()<= 605: myText.text += "9:05\n";
case timeToSec()>=649 && timeToSec()<= 709: myText.text += "10:49\n";
case timeToSec()>=656 && timeToSec()<= 716: myText.text += "10:56\n";
case timeToSec()>=665 && timeToSec()<= 725: myText.text += "11:05\n";
case timeToSec()>=769 && timeToSec()<= 829: myText.text += "12:49\n";
case timeToSec()>=776 && timeToSec()<= 836: myText.text += "12:56\n";
case (timeToSec()>=785 && timeToSec()<= 845 && false): myText.text += "13:05\n";
case timeToSec()>=836 && timeToSec()<= 896: myText.text += "13:56\n";
case timeToSec()>=889 && timeToSec()<= 949: myText.text += "14:49\n";
case timeToSec()>=896 && timeToSec()<= 956: myText.text += "14:56\n";
case timeToSec()>=905 && timeToSec()<= 965: myText.text += "15:05\n";
case timeToSec()>=945 && timeToSec()<= 1005: myText.text += "15:45\n";
case timeToSec()>=982 && timeToSec()<= 1042: myText.text += "16:22\n";
case timeToSec()>=1009 && timeToSec()<= 1069: myText.text += "16:49\n";
case timeToSec()>=1016 && timeToSec()<= 1076: myText.text += "16:56\n";
case timeToSec()>=1025 && timeToSec()<= 1085: myText.text += "17:05\n";
case timeToSec()>=1129 && timeToSec()<= 1189: myText.text += "18:49\n";
case (timeToSec()>=1136 && timeToSec()<= 1196) : myText.text += "18:56\n"; //je v zatvorkach aj tak vezme leen prvu podmienku
case timeToSec()>=1145 && timeToSec()<= 1205: myText.text += "19:05\n";
case timeToSec()>=1249 && timeToSec()<= 1309: myText.text += "20:49\n";
case timeToSec()>=1265 && timeToSec()<= 1325: myText.text += "21:05\n";
case timeToSec()>=1270 && timeToSec()<= 1330: myText.text += "21:10\n";break;
break;
default : myText.text += "Nejdu vlaky "+ timeToSec();break;
}
mirak2
Hardcore addict
Príspevky: 6719 Registrovaný: 18 sep 2005, 13:44
Bydlisko: Prague, CZE / Kosice, SVK
Príspevok
od používateľa mirak2 » 02 mar 2013, 14:18
1. kod ma ist do tagu code
2. na toto by som asi nepouzival switch ale normalne ify, aj keby ich ma byt hromada tam
audiotrack
VIP
Príspevky: 25958 Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:
Príspevok
od používateľa audiotrack » 02 mar 2013, 15:09
chyba je v tých intervaloch, len náhodne keď vyberiem dva riadky:
Kód: Vybrať všetko
...
case timeToSec()>=982 && timeToSec()<= 1042: myText.text += "16:22\n";
case timeToSec()>=1009 && timeToSec()<= 1069: myText.text += "16:49\n";
...
tak napríklad pre čas 1010 sedia obe podmienky. Je to viac ako 982 a zároveň menej ako 1042 ale tiež je to viac ako 1009 a zároveň menej ako 1069. Takže podmienky sa vyhodnocujú správne, ale ty ich máš blbo nadefinované.
p4to
Expert
Príspevky: 156 Registrovaný: 17 jún 2010, 8:07
Príspevok
od používateľa p4to » 02 mar 2013, 15:13
uz som to vyriesil aj cez switch ale diki ano v podmienky boli zle, nelogicke
ale uz som to spravil diki moc