实现功能是:参数a和参数b运算输出结果后,其结果再和参数c运算输出!代码:package pkg;
//import pkg.*;
public class SimpleCalculator1{
private String first;
private String second;
public double result;
private String operator;
public void setFirst(String first){
this.first=first;
}
public void setSecond(String second){
this.second=second;
}
public void setOperator(String operator){
this.operator=operator;
}
public String getFirst(){
return this.first;
}
public String getSecond(){
return this.second;
}
public String getOperator(){
return this.operator;
}
public double getResult(){
return this.result;
}
public void calculation()
{
double one=Double.parseDouble(first);
double two=Double.parseDouble(second);
try{
if (operator.equals("x+y"))
result=one+two;
else if(operator.equals("x-y"))
result=one-two;
else if(operator.equals("x*y"))
result=one*two;
else if(operator.equals("x/y"))
result=one/two;
}
catch(Exception e)
{
System.out.println(e);
}
}
-----------------------------------------------------------------------------------------package pkg;
import pkg.SimpleCalculator1;
public class SimpleCalculator2 extends SimpleCalculator1
{
private String third;
private double fourth;
private double result;
private String optor;
public void setOptor(String optor)
{
this.optor=optor;
}
public String getOptor()
{
return this.optor;
}
public void setThird(String third)
{
this.third=third;
}
public String getThird()
{
return this.third;
}
public double getFourth()
{
return this.fourth;
}
public double getResult1()
{
return this.result;
}
public void calculate()
{
double three=Double.parseDouble(third);
try{
if (optor.equals("R+Z"))
result=super.getResult()+three;
else if(optor.equals("R-Z"))
result=super.getResult()-three;
else if(optor.equals("R*Z"))
result=super.getResult()*three;
else if(optor.equals("R/Z"))
result=super.getResult()/three;
}
catch(Exception e)
{
System.out.println(e);
}
}
}
-----------------------------------------------------------------------------------------
<%@ page contentType="text/html; charset=gb2312"%>
<jsp:useBean id="calculator" scope="session" class="pkg.SimpleCalculator1">
<jsp:setProperty name="calculator" property="*"/>
</jsp:useBean>
<%
String first=request.getParameter("first");
String second=request.getParameter("second");
String result=request.getParameter("result");
%>
<%
//session.getAttribute("result");
session.setAttribute("result",result);
%>
<html>
<head>
<title>简单计算器</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
<p align=center><b>简单计算器</b>
<hr>
<div align=center>
<form action="calculate.jsp" method=get>
<table width="75%">
<tr>
<td align=right>请输入X值</td>
<td><input type=text name="first"></td>
</tr>
<tr>
<td align=right>请输入Y值</td>
<td><input type=text name="second"></td>
</tr>
<hr>
<td align=right>计算结果是</td>
<td><input type=text name=result value=<%
try
{
calculator.calculation();
out.println(calculator.getResult());
}
catch(Exception e)
{
out.println(e);
}
%>></td>
<tr>
<td></td>
<td><input type=submit value="x+y" name="operator">
<input type=submit value="x-y" name="operator">
<input type=submit value="x*y" name="operator">
<input type=submit value="x/y" name="operator"></td>
</tr><jsp:useBean id="SC" scope="session" class="pkg.SimpleCalculator2">
<jsp:setProperty name="SC" property="*"/>
</jsp:useBean>
<tr>
<td align="right">R的值是:</td>
<td><input type=text name=fourth value=<%=calculator.getResult() %>></td>
</tr>
<tr>
<td align="right">请输入Z值</td>
<td><input type=text name=third></td>
</t>
<TR>
<td align="right">计算结果是</td>
<td><input type=text value=<%
try
{
SC.calculate();
out.println(SC.getResult1());
}
catch(Exception e)
{
out.println(e);
}
%>></td>
</TR>
<tr>
<td></td>
<td><input type=submit value="R+Z" name="optor">
<input type=submit value="R-Z" name="optor">
<input type=submit value="R*Z" name="optor">
<input type=submit value="R/Z" name="optor"></td>
</tr></table>
</form>
</div>
</body>
</html>
a和b的结果传不到与c运算!!麻烦大家指点下!
//import pkg.*;
public class SimpleCalculator1{
private String first;
private String second;
public double result;
private String operator;
public void setFirst(String first){
this.first=first;
}
public void setSecond(String second){
this.second=second;
}
public void setOperator(String operator){
this.operator=operator;
}
public String getFirst(){
return this.first;
}
public String getSecond(){
return this.second;
}
public String getOperator(){
return this.operator;
}
public double getResult(){
return this.result;
}
public void calculation()
{
double one=Double.parseDouble(first);
double two=Double.parseDouble(second);
try{
if (operator.equals("x+y"))
result=one+two;
else if(operator.equals("x-y"))
result=one-two;
else if(operator.equals("x*y"))
result=one*two;
else if(operator.equals("x/y"))
result=one/two;
}
catch(Exception e)
{
System.out.println(e);
}
}
-----------------------------------------------------------------------------------------package pkg;
import pkg.SimpleCalculator1;
public class SimpleCalculator2 extends SimpleCalculator1
{
private String third;
private double fourth;
private double result;
private String optor;
public void setOptor(String optor)
{
this.optor=optor;
}
public String getOptor()
{
return this.optor;
}
public void setThird(String third)
{
this.third=third;
}
public String getThird()
{
return this.third;
}
public double getFourth()
{
return this.fourth;
}
public double getResult1()
{
return this.result;
}
public void calculate()
{
double three=Double.parseDouble(third);
try{
if (optor.equals("R+Z"))
result=super.getResult()+three;
else if(optor.equals("R-Z"))
result=super.getResult()-three;
else if(optor.equals("R*Z"))
result=super.getResult()*three;
else if(optor.equals("R/Z"))
result=super.getResult()/three;
}
catch(Exception e)
{
System.out.println(e);
}
}
}
-----------------------------------------------------------------------------------------
<%@ page contentType="text/html; charset=gb2312"%>
<jsp:useBean id="calculator" scope="session" class="pkg.SimpleCalculator1">
<jsp:setProperty name="calculator" property="*"/>
</jsp:useBean>
<%
String first=request.getParameter("first");
String second=request.getParameter("second");
String result=request.getParameter("result");
%>
<%
//session.getAttribute("result");
session.setAttribute("result",result);
%>
<html>
<head>
<title>简单计算器</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
<p align=center><b>简单计算器</b>
<hr>
<div align=center>
<form action="calculate.jsp" method=get>
<table width="75%">
<tr>
<td align=right>请输入X值</td>
<td><input type=text name="first"></td>
</tr>
<tr>
<td align=right>请输入Y值</td>
<td><input type=text name="second"></td>
</tr>
<hr>
<td align=right>计算结果是</td>
<td><input type=text name=result value=<%
try
{
calculator.calculation();
out.println(calculator.getResult());
}
catch(Exception e)
{
out.println(e);
}
%>></td>
<tr>
<td></td>
<td><input type=submit value="x+y" name="operator">
<input type=submit value="x-y" name="operator">
<input type=submit value="x*y" name="operator">
<input type=submit value="x/y" name="operator"></td>
</tr><jsp:useBean id="SC" scope="session" class="pkg.SimpleCalculator2">
<jsp:setProperty name="SC" property="*"/>
</jsp:useBean>
<tr>
<td align="right">R的值是:</td>
<td><input type=text name=fourth value=<%=calculator.getResult() %>></td>
</tr>
<tr>
<td align="right">请输入Z值</td>
<td><input type=text name=third></td>
</t>
<TR>
<td align="right">计算结果是</td>
<td><input type=text value=<%
try
{
SC.calculate();
out.println(SC.getResult1());
}
catch(Exception e)
{
out.println(e);
}
%>></td>
</TR>
<tr>
<td></td>
<td><input type=submit value="R+Z" name="optor">
<input type=submit value="R-Z" name="optor">
<input type=submit value="R*Z" name="optor">
<input type=submit value="R/Z" name="optor"></td>
</tr></table>
</form>
</div>
</body>
</html>
a和b的结果传不到与c运算!!麻烦大家指点下!
你要计算两步以上的运算,可以把前面一步的计算结果(result),
赋给左值(也就是取代原来的x),清空右值让用户输入第三个操作数,
如此循环而已