怎么判断除数是否为0

Jeans5219 2015-10-18 03:35:12
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>计算器</title>
<script>

function check()
{
var n1 = document.getElementById('num1').value;
var n2 = document.getElementById('num2').value;

if(!isNumber(n1)||!isNumber(n2))
{
alert("请输入数字!");
return false;
}


function isNumber(str)
{
var nums="1234567890.-";
for(var i=0;i<str.length;i++)
{
var ch=str.charAt(i);
if(nums.indexOf(ch)==-1)
return false;
}
return true;
}
</script>
</head>
<%
String num1 = request.getParameter("num1");
String num2 = request.getParameter("num2");
String operator = request.getParameter("operator");
if(num1==null)
num1="0";
if(num2==null)
num2="0";
if(operator==null)
operator="+";


double n1 = Double.parseDouble(num1);
double n2 = Double.parseDouble(num2);
double reuslt = 0;
if(operator.equals("+"))
reuslt = n1+n2;
else if(operator.equals("-"))
reuslt = n1-n2;
else if(operator.equals("*"))
reuslt = n1*n2;
else if(operator.equals("^"))
reuslt = Math.sqrt(n1);
else if(operator.equals("%"))
reuslt = n1%n2;
else
reuslt = n1/n2;
%>
<body bgcolor=#97FFFF align="center">
<form action="cal.jsp" method="POST">
<h1>简易计算器</h1>
第一个操作数:<input type="text" name="num1" id="num1" value="<%=num1%>" /><br />
第二个操作数:<input type="text" name="num2" id="num2" value="<%=num2%>" /><br />
操作:<select name="operator">
<option value="+" <%if(operator.equals("+")) out.println("selected");%>>+</option>
<option value="-" <%if(operator.equals("-")) out.println("selected");%>>-</option>
<option value="*" <%if(operator.equals("*")) out.println("selected");%>>*</option>
<option value="/" <%if(operator.equals("/")) out.println("selected");%>>/</option>
<option value="^"<%if(operator.equals("^")) out.println("selected");%>>^</option>
<option value="%"<%if(operator.equals("%")) out.println("selected");%>>%</option>
</select>

<input type="submit" value="计算" name="b1" onclick="return check()"/>
<input type="reset" value="重置" name="b2" /><br />
计算结果:<%=reuslt%>
</form>
</body>
</html>
————————————————————————————————
以上是代码,要求是在做除法运算“/”和取余“%”时,判断除数(num2)是否为0,若除数(num2)为0,则弹出提示。
还有是在做平方根“^”运算时,判断输入的数(num1)是否大于等于0,若输入的数(num1)小于0,弹出提示。
求各路大神指点= =
...全文
1346 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
hch126163 2015-10-19
  • 打赏
  • 举报
回复
function check() { var n1 = document.getElementById('num1').value; var n2 = document.getElementById('num2').value; if(!isNumber(n1)||!isNumber(n2)) { alert("请输入数字!"); return false; } var op=document.getElementsByName('operator')[0].value; if((op=='/'||op=='%')&&parseInt(n2,10)==0){alert('.......');return false;} if(op=="^"&&parseInt(n1,10)<0){alert('.......');return false;}
Go 旅城通票 2015-10-19
  • 打赏
  • 举报
回复
1#的改下这个就行 var op=document.getElementsByName('operator')[0].value;
我叫小菜菜 2015-10-18
  • 打赏
  • 举报
回复
1楼的代码应该没有什么问题吧。 使用debugger调试一下就知道微小的不对在哪了。
Jeans5219 2015-10-18
  • 打赏
  • 举报
回复
并不行啊
slwsss 2015-10-18
  • 打赏
  • 举报
回复
function check() { var n1 = document.getElementById('num1').value; var n2 = document.getElementById('num2').value; if(!isNumber(n1)||!isNumber(n2)) { alert("请输入数字!"); return false; } var op=document.getElementsByName('operator').value; if((op=='/'||op=='%')&&n2=='0')return alert('.......'),false; if(op=="^"&&n1<0)return alert('.......'),false;

87,955

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧