Просмотр полной версии : Вопрос про проверку на вхождение переменной в массив
FlashMann
12.11.2005, 11:35
ПРивет!
Вопрос вот в чем.
Вообщем есть значение переменной(меняется кадый раз заново в определенном интервале), есть массив (сначало пустой), нужно проверить на вхождение данной переменной в этот массив, если значение такое там имеется то действие1, иначе записываем значение этой переменной в данный массив и действие1. Соответственно действие данное должно повторятся в цикле столько раз, сколько длина данного массива, т.е какдый раз на 1 больше до определенного значения.
Подскажите плиз конструкцию данного алгоритма на AS..
Заранее спасибо.
arrayM = [];
this.onEnterFrame = function () {
var n = Math.floor (Math.random () * 10);
if (arrayM[n]) {
trace ("число " + n + " есть в массиве");
} else {
trace ("числа " + n + " в массиве нет, добавляем ");
arrayM[n] = true;
}
};
FlashMann
12.11.2005, 14:15
Спасибо iNils..
Счас попробую приспособить..
arrayM = [];
this.onEnterFrame = function () {
var n = Math.floor (Math.random () * 10);
if (arrayM[n]) {
trace ("число " + n + " есть в массиве");
} else {
trace ("числа " + n + " в массиве нет, добавляем ");
arrayM[n] = true;
}
};
Как бы помягче сказануть????
Думаем, пишем -
var perem;
arrayM = [];
trace(arrayM.length);
this.onEnterFrame = function() {
if (arrayM == []) {
trace("числа "+perem+" в массиве нет, добавляем ");
arrayM.push(perem);
trace("теперь число "+perem+" есть в массиве");
} else {
for (var i = 0; i<=arrayM.length-1; i++) {
if (arrayM[i] == perem) {
trace("число "+perem+" есть в массиве");
} else {
trace("числа "+perem+" в массиве нет, добавляем ");
arrayM.push(perem);
trace("теперь число "+perem+" есть в массиве");
}
}
}
};
И?...
Ты сам читал, что написал в коде?
Ты сам читал, что написал в коде?
Прикинь, читал. Даже запустил. И оно, подумать только, работало.
arrayM = [];
this.onEnterFrame = function () {
var n = Math.floor (Math.random () * 10);
if (arrayM[n]) {
trace ("число " + n + " есть в массиве");
} else {
trace ("числа " + n + " в массиве нет, добавляем ");
arrayM[n] = true;
}
};
Мда .... =)
Прикинь, читал. Даже запустил. И оно, подумать только, работало.
Работало это как?
Деньги печатало или звёзды на небе считало? :p
Так понятнее?
arrayM = [];
this.onEnterFrame = function () {
var n = Math.floor (Math.random () * 10);
if (arrayM[n]) {
trace ("выполняем действие 1");
} else {
trace ("выполняем действие 2, тут что хотите то и делайте, может по длине массива проходить, по квадрату или по треугольнику");
arrayM[n] = true;
}
};
Так понятнее?
arrayM = [];
this.onEnterFrame = function () {
var n = Math.floor (Math.random () * 10);
if (arrayM[n]) {
trace ("выполняем действие 1");
} else {
trace ("выполняем действие 2, тут что хотите то и делайте, может по длине массива проходить, по квадрату или по треугольнику");
arrayM[n] = true;
}
};
Нуран сегодня добрый, иначе он бы вместо - М-дааа
написал бы - полный бред...
Я же напишу -
код никакой.....
var na:Array = new Array ();
action = function ()
{
};
updateArray = function (v)
{
for (var i = 0; i < na.length; i++)
{
if (na[i] == v)
{
action ();
return;
}
}
a.push (v);
action ();
return;
};
Для добавления надо юзать так:
updateArray ("Новый элемент");
FlashMann
12.11.2005, 20:15
Штрек, nuran..
спасибо за алгоритмы, будем реализовывать.. :)
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.