jsp计算三角形面积,保留3位和6位

一、内容

编写一个Tag文件GetArea.tag负责求出三角形面积,并使用variable指令返回三角形的面积给调用该Tag文件的JSP页面。JSP页面负责显示Tag文件返回的三角形的面积。JSP在调用Tag文件时,使用attribute指令将三角形三边的长度传递给Tag文件。one.jsp和two.jsp都使用Tag标记调用GetArea.tag。one.jsp将返回三角形的面积保留最多3位小数、two.jsp将返回的三角形面积保留最多6位小数。


二、one.jsp

<%@ page contentType="text/html; charset=UTF-8"%>
<%@page import="java.text.*" %>
<%@ taglib tagdir="/WEB-INF/tags" prefix="computer" %>


请输入三角形的三条边:


<% 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){ %> <% NumberFormat f=NumberFormat.getInstance(); f.setMaximumFractionDigits(3); double result=area.doubleValue(); String str=f.format(result); out.println(str); } %>

三、two.jsp

<%@ page contentType="text/html; charset=UTF-8"%>
<%@page import="java.text.*" %>
<%@ taglib tagdir="/WEB-INF/tags" prefix="computer" %>


请输入三角形的三条边:


<% 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){ %> <% NumberFormat f=NumberFormat.getInstance(); f.setMaximumFractionDigits(3); double result=area.doubleValue(); String str=f.format(result); out.println(str); } %>

四、GetArea.tag

<%@ tag pageEncoding="gb2312" %>
<%@ 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&&c+b>a){
		double p=(a+b+c)/2.0;
		double area=Math.sqrt(p*(p-a)*(p-b)*(p-c));
		jspContext.setAttribute("area",new Double(area));
	}
	else{
		jspContext.setAttribute("area",new Double(-1));
	}
%>

五、运行效果

 

jsp计算三角形面积,保留3位和6位_第1张图片jsp计算三角形面积,保留3位和6位_第2张图片

jsp计算三角形面积,保留3位和6位_第3张图片jsp计算三角形面积,保留3位和6位_第4张图片

你可能感兴趣的:(jsp计算三角形面积,保留3位和6位)