Главная страница
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.033 c
3-1086058303
ИМХО
2004-06-01 06:51
2004.06.27
Открыть в FoxPro with memo в Delphi


1-1086946858
Valeri
2004-06-11 13:40
2004.06.27
Даты...


1-1086895435
DDA
2004-06-10 23:23
2004.06.27
Номер Потока и запуск его


1-1087127965
Warden
2004-06-13 15:59
2004.06.27
BlockRead


14-1086898037
Ксения Собчак
2004-06-11 00:07
2004.06.27
Засвидетельствовать своё почтение