Просмотр полной версии : алгоритм
имеем 6-ть переменных(независимых событий) принимающих значение лож-правда, бульных короче, в случае различных комбинаций наступают различные действия в скрипте, засада: очень много получается комбинаций и ведь на каждую свое действие, предложите оптимальный алгоритм достижения конечного решения о действии, простых if, ifelse получается огромное количество, если switch то он получается не намного меньше и не факт что скрипту не придется пробегать его до конца прежде чем будет принято действие, неужели нет какого-то более мощного алгоритма?
ну а что... не плохой вариантец... =)
если у тебя при всех вариантах разное действие то вообще пипец...
если одинаково тогда инклуды или функции используй...
ну чтоже тогда могу сказать...
прийдётся простотак писать... главное потом ни одно действие не пропустить =)
я бы даже не согласился проверять эту штуку =)))
DeepDiver
10.02.2002, 17:22
а почему бы не попробовать перевести 6 булевских в одну целочисленную переменную, и уже по ней ставить switch? думаю свитч на 64 позиции - минимальная конструкция в данном случае
Преобразоавать двоичное число в десятичное, а так уж проще
это я условно назвал их двоичными числами, на самом деле просто каждый 0 или 1 это результат сравнения определнных параметров с другими, но все параметры разные и не связанны друг с другом никак, в общем я пошел другим путем, просто без этого механизма, а то уж больно все сложно получается
Anton-Killer
13.02.2002, 03:44
А почему бы тебе не попробовать вот так
<?php
if ($abc==$def) {
include ("function_01.php.inc");
}
//а в этих файлах описываешь функции которые тебе надо при разных условия
?>
2 Anton-Killer
опять невнимательно читаешь...
в этом то вопрос и заключается что слишком много условий... =) и что получается оооочень большой список самих проверок...
Anton-Killer
13.02.2002, 20:09
Он написал, что условий то много, но он имел еще и введу то, что если это усливие находится в самом низу, то компалеру приходиться очень много кода просто проходить через все это а так это все вызываться именно когда надо и минимум строк :)
Тогда так:
1. Из 6 битовых флагов получаем 6-битно число $foobar.
2. Инклудим нужный код:
include ("func" . $foobar . ".inc");
:)
Anton-Killer
13.02.2002, 20:26
Ну вот Crazy
Я хоть на половину был прав?????
Почему только наполовину? :) Просто прав.
Anton-Killer
14.02.2002, 01:50
Спасибо Crazy :) , а то меня nagash уже обидеть решил....
:)
ну хорошо... и не в таких битвах выживал... =)
let's fight
http://nagash.org/64.gif
=))))))))
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.