Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 06.03.2016, 20:22
Новичок на форуме
Отправить личное сообщение для Andrehrist Посмотреть профиль Найти все сообщения от Andrehrist
 
Регистрация: 06.03.2016
Сообщений: 1

Нужна помощь с калькулятором Java Script
При делении на ноль результат выдает "Infinity". Как сделать так, чтобы вместо Infinity, в окошке писалось "На ноль делить нельзя!", либо выскакивал alert с данным сообщением? Вот код калькулятора:
<script>

var Fcalc = document.calc;
var Currents = 0;
var FlagNewNum = false;
var PendingOp = "";

function NumPressed (Num) 
{
		if (FlagNewNum) 
		{
			Fcalc.Result.value = Num;
			FlagNewNum = false;
		}	
		else 
		{
			if (Fcalc.Result.value == "0")
				Fcalc.Result.value = Num;
			else
				Fcalc.Result.value += Num;
		}
}
	
function Operation (Op) 
{
		var Result = Fcalc.Result.value;
		if (FlagNewNum && PendingOp != "=")
		{
			Fcalc.Result.value = Currents;
		}
		else
		{
			FlagNewNum = true;
			if ( '+' == PendingOp )
				Currents += parseFloat(Result);
			else if ( '-' == PendingOp )
				Currents -= parseFloat(Result);
			else if ( '/' == PendingOp )
				Currents /= parseFloat(Result);
			else if ( '*' == PendingOp )
				Currents *= parseFloat(Result);
			else
				Currents = parseFloat(Result);

			Fcalc.Result.value = Currents;

			PendingOp = Op;	

		}		
     }
	
function Point () 
{
		var curResult = Fcalc.Result.value;
		if (FlagNewNum) 
		{
			curResult = "0.";
			FlagNewNum = false;
		}
		else
		{
			if (curResult.indexOf(".") == -1)
				curResult += ".";
		}
		Fcalc.Result.value = curResult;
}
	

function Clear () 
{
		Fcalc.Result.value = "0";
		FlagNewNum = true;

}

function Neg () 
{
		Fcalc.Result.value = 
		parseFloat(Fcalc.Result.value) * -1;
}

</script>


<form name="calc" class="calculator-form" action="">  
	   	   	   <table class="calculator">
	   	   	   	   <tr>
	   	   	   	      <td colspan="5"> 
         	             <input class="res-window" name="Result" style="height: 25px;" type="text" size="39" value="0">
                      </td>
	   	   	   	   	 
	   	   	   	   </tr>
	   	   	   	   <tr>
	   	   	   	   	  <td><input class="little-button" type="button" value="7" onclick="NumPressed(7)"/></td>
	   	   	   	   	  <td><input class="little-button" type="button" value="8" onclick="NumPressed(8)"/></td>
	   	   	   	   	  <td><input class="little-button" type="button" value="9" onclick="NumPressed(9)"/></td>
	   	   	   	   	  <td><input class="little-button" type="button" value="/" onclick="Operation('/')"/></td>
	   	   	   	   	  <td><input class="little-button" type="button" value="C" onclick="Clear()"/></td>
	   	   	   	   </tr>
	   	   	   	   <tr>
	   	   	   	   	  <td><input class="little-button" type="button" value="4" onclick="NumPressed(4)"/></td>
	   	   	   	   	  <td><input class="little-button" type="button" value="5" onclick="NumPressed(5)"/></td>
	   	   	   	   	  <td><input class="little-button" type="button" value="6" onclick="NumPressed(6)"/></td>
	   	   	   	   	  <td><input class="little-button" type="button" value="*" onclick="Operation('*')"/></td>
	   	   	   	   	  <td><input class="little-button" type="button" value="&plusmn;" onclick="Neg()"/></td>
	   	   	   	   </tr>
	   	   	   	   <tr>
	   	   	   	   	  <td><input class="little-button" type="button" value="1" onclick="NumPressed(1)"/></td>
	   	   	   	   	  <td><input class="little-button" type="button" value="2" onclick="NumPressed(2)"/></td>
	   	   	   	   	  <td><input class="little-button" type="button" value="3" onclick="NumPressed(3)"/></td>
	   	   	   	   	  <td><input class="little-button" type="button" value="-" onclick="Operation('-')"/></td>
	   	   	   	   	  <td rowspan="2"><input class="res-button" type="button" value="=" onclick="Operation('=')"/></td>
	   	   	   	   </tr>
	   	   	   	   <tr>
	   	   	   	   	  <td colspan="2"><input class="zero-button" type="button" value="0" onclick="NumPressed(0)"/></td>
	   	   	   	   	  <td><input class="little-button" type="button" value="." onclick="Point()"/></td>
	   	   	   	   	  <td><input class="little-button" type="button" value="+" onclick="Operation('+')"/></td>
	   	   	   	   </tr>
	   	   	   </table>
	   	   	</form>
Ответить с цитированием
  #2 (permalink)  
Старый 07.03.2016, 10:36
Аватар для Coriolan161
Профессор
Отправить личное сообщение для Coriolan161 Посмотреть профиль Найти все сообщения от Coriolan161
 
Регистрация: 21.11.2015
Сообщений: 440

Andrehrist,
Найди это
/*39 строка*/ 
  Currents /= parseFloat(Result);

и сделай проверку на Infinity через if-else
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужна помощь noob Java lolman Javascript под браузер 18 03.10.2013 11:55
Нужна помощь с калькулятором extravert Элементы интерфейса 28 17.06.2013 17:05
Нужна помощь с калькулятором Bod jQuery 8 14.12.2012 20:22
Решить задачу по упорядочиванию строк DmiTry2010 Работа 6 25.05.2010 00:19
HELP: Java Script Error: “text” is undefined Aram Khachaturyan Общие вопросы Javascript 2 11.04.2008 16:57