JSP作业 习题3-7

one.jsp

<%@ page language="java" import="java.util.*" import="java.text.*" pageEncoding="GB2312"%>
<%@taglib tagdir="/WEB-INF/tags" prefix="compute" %>
<html>
  <body>
	<h4>以下是三角形的边长,面积最多保留三位小数</h4>
	<form>
		输入边长a:<input type="text" name="a">
		<br>
		输入边长b:<input type="text" name="b">
		<br>
		输入边长c:<input type="text" name="c">
		<br>
		<input type="submit" value="提交" name="submit">
	</form>
	
	<% 
		String a=request.getParameter("a");
		String b=request.getParameter("b");
		String c=request.getParameter("c");
		if(a==null||b==null||c==null){
		a="0";
		b="0";
		c="0";
		}
		if(a.length()>0&&b.length()>0&&c.length()>0)
 	%>		
 		<compute:GetArea sideA="<%= a%>" sideB="<%= b%>" sideC="<%= c%>" />
	
	<%
		NumberFormat f=NumberFormat.getInstance();//得到默认的数字格式化显示
		f.setMaximumFractionDigits(3);//最多保留3位小数
		double result=area.doubleValue();
		String str=f.format(result);//格式化之后的数据
		out.println(str);
	%>
  </body>
</html>

two.jsp

<%@ page language="java" import="java.util.*" import="java.text.*" pageEncoding="GB2312"%>
<%@taglib tagdir="/WEB-INF/tags" prefix="compute" %>
<html>
  <body>
	<h4>以下是三角形的边长,面积最多保留六位小数</h4>
	<form>
		输入边长a:<input type="text" name="a">
		<br>
		输入边长b:<input type="text" name="b">
		<br>
		输入边长c:<input type="text" name="c">
		<br>
		<input type="submit" value="提交" name="submit">
	</form>
	
	<% 
		String a=request.getParameter("a");
		String b=request.getParameter("b");
		String c=request.getParameter("c");
		if(a==null||b==null||c==null){
		a="0";
		b="0";
		c="0";
		}
		if(a.length()>0&&b.length()>0&&c.length()>0)
 	%>		
 		<compute:GetArea sideA="<%= a%>" sideB="<%= b%>" sideC="<%= c%>" />
	
	<%
		NumberFormat f=NumberFormat.getInstance();
		f.setMaximumFractionDigits(6);//设置最多保留6位小数
		double result=area.doubleValue();
		String str=f.format(result);
		out.println(str);
	%>
  </body>
</html>
 

GetArea.tag

<%@ attribute name="sideA" required="true"%>
	<%@ attribute name="sideB" required="true"%>
	<%@ attribute name="sideC" required="true"%>
	<%@ variable name-given="area" variable-class="java.lang.Double" scope="AT_END"%>
	
	<%
		double a=Double.parseDouble(sideA);
		double b=Double.parseDouble(sideB);
		double c=Double.parseDouble(sideC);
		if(a+b>c&&a+c>b&&b+c>a){
			double p=(a+b+c)/2.0;
			double result=Math.sqrt(p*(p-a)*(p-b)*(p-c));
			jspContext.setAttribute("area",new Double(result));
		}
		else{
		jspContext.setAttribute("area",new Double(-1));
	}
%>

结果显示

一、关于one.jsp的结果

 1.原始界面

 2.输入数据: 

3.最终结果显示  

二、关于two.jsp的结果显示

 1.原始界面

 2.输入数据:

3.最终结果显示 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值