Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.06.27;
Скачать: CL | DM;

Вниз

Помогите переделать if в формулу? Что-то торможу я   Найти похожие ветки 

 
Алекс А   (2004-06-09 04:47) [0]

var
 isBool : Boolean;
begin
...
if isBool then func1(not odd(i)) else func1(odd(i));

Хочу преобразовать, чтобы был только вызов функции без ифа. Как это сделать двоичной арифметикой?


 
Mim1 ©   (2004-06-09 05:33) [1]

func1(isBool xor odd(i)) ;


 
TUser ©   (2004-06-09 06:20) [2]

или
func1(isBool xor (i shr 1 = 0)) ;


 
MBo ©   (2004-06-09 06:25) [3]

(i shr 1 = 0)) ???
наверно, and имелось в виду?


 
TUser ©   (2004-06-09 06:36) [4]

Почему? Если оно четное, то делим на 2, получим 0.


 
MBo ©   (2004-06-09 06:38) [5]

>Если оно четное, то делим на 2, получим 0.
Не все согласятся ;)
mod 2 - действительно будет 0 для четных, а div 2 - скорее нет, чем да ;)


 
TUser ©   (2004-06-09 06:42) [6]

Да, вообще согласен - лохонулся.


 
Алекс А   (2004-06-09 07:03) [7]

Спасибо за помощь ! :)


 
jack128 ©   (2004-06-09 08:20) [8]

А можно узнать - зачем это делать без if ? Если ты _сам_ не смог написать эту конструкцию - значит она для тя не естественна, значит в следующий раз просматривая этот код, ты будешь думать, а что же это все означает?? Спрашивается - оно тебе надо?


 
Алекс А   (2004-06-10 01:30) [9]


> jack128 ©   (09.06.04 08:20) [8]

Я всё комментирую.
Переменные названы так, что и так всё понятно.
Если не умеешь водить машину, то надо научиться, а не пешком всю жизнь ходить.
С ифом будет в коде два вызова функции, а без ифа один. Код короче вдвое.



Страницы: 1 вся ветка

Текущий архив: 2004.06.27;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.06 c
1-1087285327
Timon
2004-06-15 11:42
2004.06.27
Уважаемые Мастера помогите в проблеме (GRID DBGRID)...........


4-1085030000
-SeM-
2004-05-20 09:13
2004.06.27
vcltest3.dll


14-1086947796
MBo
2004-06-11 13:56
2004.06.27
Пятница - время поломать голову ;^)


1-1086850034
Konstantin
2004-06-10 10:47
2004.06.27
Помогите пожалуйста с Excel, - <invalid variant operation>


3-1086029463
Bohdan
2004-05-31 22:51
2004.06.27
Ошибка "Cannot edit LANGDRIVER" dBASE RUS cp866!!!