Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Вопрос про проверку на вхождение переменной в массив (http://www.flasher.ru/forum/showthread.php?t=71746)

FlashMann 12.11.2005 11:35

Вопрос про проверку на вхождение переменной в массив
 
ПРивет!

Вопрос вот в чем.

Вообщем есть значение переменной(меняется кадый раз заново в определенном интервале), есть массив (сначало пустой), нужно проверить на вхождение данной переменной в этот массив, если значение такое там имеется то действие1, иначе записываем значение этой переменной в данный массив и действие1. Соответственно действие данное должно повторятся в цикле столько раз, сколько длина данного массива, т.е какдый раз на 1 больше до определенного значения.

Подскажите плиз конструкцию данного алгоритма на AS..

Заранее спасибо.

iNils 12.11.2005 13:27

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..

Счас попробую приспособить..

Штрек 12.11.2005 16: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+" есть в массиве");
                        }
                }
        }
};


iNils 12.11.2005 16:23

И?...

Штрек 12.11.2005 16:40

Цитата:

Сообщение от iNils
И?...

Ты сам читал, что написал в коде?

iNils 12.11.2005 16:46

Цитата:

Сообщение от Штрек
Ты сам читал, что написал в коде?

Прикинь, читал. Даже запустил. И оно, подумать только, работало.

nuran 12.11.2005 16:49

Цитата:

Сообщение от iNils
arrayM = [];
this.onEnterFrame = function () {
var n = Math.floor (Math.random () * 10);
if (arrayM[n]) {
trace ("число " + n + " есть в массиве");
} else {
trace ("числа " + n + " в массиве нет, добавляем ");
arrayM[n] = true;
}
};

Мда .... =)

Штрек 12.11.2005 17:00

Цитата:

Сообщение от iNils
Прикинь, читал. Даже запустил. И оно, подумать только, работало.

Работало это как?
Деньги печатало или звёзды на небе считало? :p

iNils 12.11.2005 17:09

Так понятнее?
arrayM = [];
this.onEnterFrame = function () {
var n = Math.floor (Math.random () * 10);
if (arrayM[n]) {
trace ("выполняем действие 1");
} else {
trace ("выполняем действие 2, тут что хотите то и делайте, может по длине массива проходить, по квадрату или по треугольнику");
arrayM[n] = true;
}
};


Часовой пояс GMT +4, время: 20:26.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.