Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Ошибка при вычислении таблицы умножения (https://javascript.ru/forum/dom-window/33891-oshibka-pri-vychislenii-tablicy-umnozheniya.html)

fludkov 12.12.2012 23:33

Ошибка при вычислении таблицы умножения
 
Доброго всем дня! в первый раз на этом форуме. JavaScript это первый язык который я начал изучать, собственно пошёл 5-ый день изучения, так что может есть что, я не понимаю, подскажите.
Проблема вот в чём:


<script type="text/javascript">
		function func(param, start, high)
		{
			for (start; start<=high; start++)
			{
				document.write(param + ' * ' + start + ' is ' + param*start + '<br>');
			}
		}

		var param = prompt('Введите численные значения от -100 до 100', 4);
		while ((param>100) || (param<-100) || (isNaN(param)==true))
		{
			param = prompt('Введите корректные численные значения от -100 до 100, данные ' + param + ' неверны', 4);
		}
		var start = prompt('Введите нижнее значение вычислений от -100 до 100', 4);
		while ((start>100) || (start<-100) || (isNaN(start)==true))
		{
			start = prompt('Введите корректные численные значения от -100 до 100, данные ' + start + ' неверны', 4);
		}
		var high = prompt('Введите верхнее значение от -100 до 100', 5);
		while ((high>100) || (high<-100) || (isNaN(high)==true) || (high<start))
		{
			if ((high>100) || (high<-100) || (isNaN(high)==true))
			{
				high = prompt('Введите корректные численные значения от -100 до 100, данные ' + high + ' неверны \nВведите верхнее значение от -100 до 100', 5);
			}
			else 
			{
				high = prompt('Верхнее значение не может быть меньше нижнего', 5);
			}
		}
		func (param,start,high);
	</script>

При подстановке значений 4 4 3 выводит ошибку, всё верно, верхнее значение 3 не может быть меньше нижнего 4. Но когда ставлю для проверки нижнее значение 100, а верхнее 99, он мне почему-то не выдаёт ошибку, а пишет результат для 100.
Помогите разобраться в данной магии, спасибо!

рони 12.12.2012 23:52

fludkov,
prompt возвращает string а не number
чтобы получить число можно добавить +
var param =  +prompt('Введите численные значения от -100 до 100', 4);

Kalashmet 16.12.2012 20:38

Спасибо)


Часовой пояс GMT +3, время: 08:40.