Страница 1 из 1

Команды логин-скрипта. Высокая ТЕОРИЯ.

СообщениеДобавлено: 06 фев 2006, 21:19
Музалёв Николай
Коллеги, что бы вы посоветовали в скрипте, чтобы реализовать условие по-понедельникам и пятницам, в 1й половине дня....
- в одну стороку на два дня:
Код: Выделить всё
IF ((NDAY_OF_WEEK = VALUE "2"  OR NDAY_OF_WEEK = VALUE "6")  AND (HOUR24 >= VALUE "08" AND HOUR24 < VALUE "10")) THEN
.......
END


- или в две строки на один день ?
Код: Выделить всё
IF ((NDAY_OF_WEEK = VALUE "2" ) AND (HOUR24 >= VALUE "08" AND HOUR24 < VALUE "10")) THEN
.........
END
IF ( NDAY_OF_WEEK = VALUE "6")  AND (HOUR24 >= VALUE "08" AND HOUR24 < VALUE "10")) THEN
........
END


в частности, по скорости отрабатывания на неспешных машинах.
И стоИт ли объединять два оператора во втором варианте связкой ELSE ?

Какова логика отработки логических операторов? до первого нет или до упора?
В общем - соображения и глубокие знания приветствуются...
Спасибо.

СообщениеДобавлено: 07 фев 2006, 11:20
Владимир Горяев
Как бы не соврать, но была вроде переменная определяющая какое время - ДП или ПП.
в две строки на один день на мой взгляд предпочтительней, потому как вдруг еще и в среду захочется - раз и копи с мин правкой, и читабельней.
И стоИт ли объединять два оператора во втором варианте связкой ELSE ?
Хм. По идее с ELSE в понедельник отработает быстрее, а в пятницу так же, как и без ELSE :) и в др дни, кроме понедельника

Re: Команды логин-скрипта. Высокая ТЕОРИЯ.

СообщениеДобавлено: 07 фев 2006, 12:21
Влад А.Сокол aka Akina
Музалёв Николай писал(а):стоИт ли объединять два оператора во втором варианте связкой ELSE ?

Варианты взаимоисключающие - следовательно да.

Музалёв Николай писал(а):Какова логика отработки логических операторов? до первого нет или до упора?

full evaluation before execution

СообщениеДобавлено: 07 фев 2006, 19:07
Музалёв Николай
Коллеги, спасибо за подсказки - вы мне очень помогли: с вашими советами и перечтёнными доками мой скрипт стал значительно более привлекательным и компактным.

Напоследок: есть переменная AM_PM - с ней понятно, это именно то, о чем говорил коллега Владимир, а вот что касается
Код: Выделить всё
GREETING_TIME - Time of day (morning, afternoon, or evening)

, то не подскажите ли, какие интервалы (в часах) имеются в виду?

Спасибо.