PDA

Просмотр полной версии : сумма всех чисел


Therion
10.07.2007, 22:52
вот допустим у меня есть такой скрипт
obj2=[2,8,5]
X=0
for (i in obj2) {
X+=obj2[i]
trace(X)
}

и мне надо чтобы сразу воводилась сумма всех чисел а не так как показывает trace :5,13,15

нужно чтобы сразу всё суммировалось и выдавало конечный результат....

спасибо за помощь

lowka
10.07.2007, 22:59
Поменяйте последние две строки местами.

SaFeR
10.07.2007, 23:01
trace после цикла напиши

Therion
10.07.2007, 23:03
хм
интересно такое прокатит в моём скрипте..:)
ведь это всего лишь упращённый пример
счас проверю..


Всё работает, всем спасибо

Kikasso
10.07.2007, 23:56
Массив лучше перебирать for( i=0; i<arr.lenght; i++){ ... }

Torero
11.07.2007, 03:26
2 Kikasso: А почему такой способ предпочтительней? Ведь элементы в середине массива могут быть не заданы..


arr[0]=1;
arr[1]=7;
arr[5]=9;

Kikasso
11.07.2007, 03:48
arr = [];
arr[0]=1;
arr[5]=9;
arr[1]=7;
n = 0;
for( p in arr ){
trace ( typeof(p) +' '+ p + ': ' + arr[p] );
n += p;
}
trace( n ); //0150
trace(arr); //1,7,undefined,undefined,undefined,9
trace(arr.length); // 6

Обратите внимание на порядок вывода и на тип 'p'.
Если вам нужен массив с "дырками", почему не воспользоваться простым объектом?