Показать сообщение отдельно
Старый 07.12.2007, 13:16
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 24  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Цитата:
wvxvw, false condition функция?
нет, место, где писать код, если условие не соблюдается.
Сорь, я не видел, что есть вторая страница. Просто самый быстрый способ (с точки зрения записи, как оно в смысле производительности - не знаю) выяснить соответвствие множественных условий - сложить их все (булевое "тру"=1, булевое "фолс"=0) и проверить результат.
Т.е. "тру"+"тру"+"тру"=3, "фолс"+"тру"+"тру"=2, например.
если нужно именно последовательно проверить - вот вариант:
Код:
var _arr:Array = [true, true, false, true];
var _arr1:Array = [true, true, true, true];
var _arr2:Array = [true, false, false, true];
var _arr3:Array = [false, false, false, false];
function calculate(_a:Array):Number {
	var i:Number = 0;
	var r_num:Number = 1;
	var base:Number = 1;
	while(i<_a.length){
		r_num+=(base<<_a[i]);
		base *=2;
		i++;
	}
	return r_num ^ base;
}
//
trace(calculate(_arr).toString(2)); //1011
trace(calculate(_arr1).toString(2)); //1111
trace(calculate(_arr2).toString(2)); //1001
trace(calculate(_arr3).toString(2)); //0
Т.е. в зависимости от последовательности тру-фолс получим разное значение (всегда уникальное), ну а потом уже проверять как нравится - иф\свитч...
__________________
Hell is the possibility of sanity