Форум: "Основная";
Текущий архив: 2004.06.27;
Скачать: [xml.tar.bz2];
ВнизПомогите переделать 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;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.032 c