Показать сообщение отдельно
Старый 25.01.2009, 13:29
Anoxia вне форума Посмотреть профиль Отправить личное сообщение для Anoxia Найти все сообщения от Anoxia
  № 1  
Anoxia

Регистрация: Jan 2004
Сообщений: 24
По умолчанию помогите побороть NaN-ы (опять математика)

вобщем в старой теме я все сделал, теперь изменения.

вобщем есть поля для ввода х1, х2, х3, х4

они складываются и делятся на количество введенных чисел
тоесть если ввести 2 и 8 получится результат 5

но теперь я добавил еще 4 поля sx1, sx2, sx3, sx4
они работают по принципу sx1= x1 минус результат первого вычисления (в нашем случае 5)
оно работает но в остальные "пустые" поля выводит наны
далее нужно каждый sx возвести в квадрат и сложить

вобщем то sx выводятся в динамические поля и мне нада сделать повторную проверку на пустые поля

Код AS1/AS2:
var textFieldsNum:Number = 4;// кол-во полей
var total:Number = countTotal();// сумма полей * на их кол-во
 
function countTotal():Number{
	var inputedNums:Array = [];// контейнер для заполненных
	var i:Number = 1;
	while (i <= textFieldsNum) {
		var inputedNum:String = this[("x" + i)].text;
		if (inputedNum != "") {//если не пустое
			inputedNums.push(Number(inputedNum));
		}
		i++;
	}
	var totalSum = 0;
	var j = 0;
	while (j < inputedNums.length) {
		var totalSum = (totalSum + inputedNums[j]);
		total_mc.text = totalSum / inputedNums.length;
 
// тут я от каждого х отнимаю результат
 
		sx1.text = x1.text -  total_mc.text 
		sx2.text = x2.text -  total_mc.text
		sx3.text = x3.text -  total_mc.text
		sx4.text = x4.text -  total_mc.text
 
// тут пытаюсь сложить квадраты
 
		sxkvadrat.text = Math.sqrt(sx1.text) + Math.sqrt(sx2.text) + Math.sqrt(sx3.text) + Math.sqrt(sx4.text)
		j++;
	}
	return totalSum * inputedNums.length;
 
}
stop();
вобщем помогите советом))

как работает можно посмотреть тут
Вложения
Тип файла: rar nan.rar (149.9 Кб, 43 просмотров)


Последний раз редактировалось Anoxia; 25.01.2009 в 13:31.