<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body> <form action="jisuanqi" method="post">
<textarea id="text" name="textarea" style="width:200px; height:20px;"></textarea>
<br>
<input type="button" value="7" name="7" onclick="javascript:Insert('7')">
<input type="button" value="8" name="8" onclick="javascript:Insert('8')">
<input type="button" value="9" name="9" onclick="javascript:Insert('9')">
<input type="button" value=" +" name="jia" onclick="javascript:Insert('+')">
<br>
<input type="button" value="4" name="4" onclick="javascript:Insert('4')">
<input type="button" value="5" name="5" onclick="javascript:Insert('5')">
<input type="button" value="6" name="6" onclick="javascript:Insert('6')">
<input type="button" value=" -" name="jian" onclick="javascript:Insert('-')">
<br>
<input type="button" value="1" name="1" onclick="javascript:Insert('1')">
<input type="button" value="2" name="2" onclick="javascript:Insert('2')">
<input type="button" value="3" name="3" onclick="javascript:Insert('3')">
<input type="button" value=" ×" name="cheng" onclick="javascript:Insert('*')">
<br>
<input type="button" value="0" name="0" onclick="javascript:Insert('0')">
<input type="button" value=" ." name="." onclick="javascript:Insert('.')">
<input type="submit" value="=" name="deng">
<input type="button" value=" ÷" name="chu" onclick="javascript:Insert('/')"> </form> </body>
<script language="javascript"> function Insert(str) {
var obj = document.getElementById('text');
if(document.selection) {
obj.focus();
var sel=document.selection.createRange();
document.selection.empty();
sel.text = str;
} else {
var prefix, main, suffix;
prefix = obj.value.substring(0, obj.selectionStart);
main = obj.value.substring(obj.selectionStart, obj.selectionEnd);
suffix = obj.value.substring(obj.selectionEnd);
obj.value = prefix + str + suffix;
}
obj.focus();
} </script> </html>
package com.hanqi.web;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; public class jisuanqi extends HttpServlet {
private static final long serialVersionUID = 1L; public jisuanqi() {
super(); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String str=request.getParameter("textarea"); try
{
if(str.length()!=str.replace("+", "").length())
{ String a=str.substring(0,1); String b=str.substring(1+1,str.length());
response.getWriter().write(str+"="+( Double.parseDouble(a)+ Double.parseDouble(b)));
}
if(str.length()!=str.replace("-", "").length())
{
String c=str.substring(0,str.indexOf("-"));
String d=str.substring(str.indexOf("-")+1,str.length());
response.getWriter().write(str+"="+( Double.parseDouble(c)- Double.parseDouble(d)));
}
if(str.length()!=str.replace("*", "").length())
{
String e=str.substring(0,str.indexOf("*"));
String f=str.substring(str.indexOf("*")+1,str.length());
response.getWriter().write(str+"="+( Double.parseDouble(e)* Double.parseDouble(f)));
}
if(str.length()!=str.replace("/", "").length())
{
String g=str.substring(0,str.indexOf("/"));
String h=str.substring(str.indexOf("/")+1,str.length());
response.getWriter().write(str+"="+( Double.parseDouble(g)/ Double.parseDouble(h)));
}

}catch(Exception e)
          {
                  response.getWriter().write("请正确使用计算器");
          }
}

    }

    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        doGet(request, response);
} }

简易servlet计算器的更多相关文章

  1. 简易Servlet计算器1.0

    编写一个简易的Servlet计算器,暂时仅能实现 + - * / % 五种运算 jsp界面: <%@ page language="java" contentType=&qu ...

  2. 03-c#入门(简易存款利息计算器v1.0)

    本想把练习题做了的结果放上来,不过发现附录是有答案的,就算了吧,自己做了没问题就行了哈.之前提到过,要是有朋友有想法,需要做小工具我可以帮忙实现,不过貌似大家都很忙.SO,自己学完第4章后,决定做一个 ...

  3. iOS:制作一个简易的计算器

    初步接触视图,制作了一个简易的计算器,基本上简单的计算是没有问题的,不是很完美,可能还有一些bug,再接再厉. // // ViewController.m // 计算器 // // Created ...

  4. 手写实现java栈结构,并实现简易的计算器(基于后缀算法)

    一.定义 栈是一种线性表结构,栈结构中有两端,对栈的操作都是对栈的一端进行操作的,那么被操作的一端称为栈顶,另一端则为栈底.对栈的操作其实就是只有两种,分别是入栈(也称为压栈)和出栈(也称为弹栈).入 ...

  5. 利用Unity3D制作简易2D计算器

    利用Unity3D制作简易2D计算器 标签(空格分隔): uiniy3D 1. 操作流程 在unity3DD中创建一个新项目 注意选择是2D的(因为默认3D) 在Assets框右键新建C#脚本 在新建 ...

  6. JS实现简易的计算器

    JS可以做的事多了,那就用来实现一个计算器吧 看看手机中的计算器,分为普通计算器和科学计算器     自认脑袋不够大,就实现一个普通版本的吧(支持正负数加减乘除等基本连续的运算,未提供括号功能) 看看 ...

  7. python 正则的使用 —— 编写一个简易的计算器

    在 Alex 的博客上看到的对正则这一章节作业是编写一个计算器,要求能计算出下面的算式. 1 - 2 * ( (60-30 +(-40/5) * (9-2*5/3 + 7 /3*99/4*2998 + ...

  8. jquery实现简易的计算器

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. 简易js计算器

    使用JS完成一个简单的计算器功能.实现2个输入框中输入整数后,点击第三个输入框能给出2个整数的加减乘除. <!DOCTYPE html> <html> <head> ...

随机推荐

  1. BizTalk开发系列(十八) 使用信封拆分数据库消息

    之前写了一篇的<BizTalk开发系列(十七) 信封架构(Envelop)> 是关于信封架构及其拆装原理的,都是理论性的内容.信封在BizTalk开发过程中最常用的应该是在读取SQL Se ...

  2. 示例-创建表格-指定行列&删除表格的行和列

    <body> <script type="text/javascript"> /* *上面的方法和你麻烦. *既然操作的是表格, *那么最方便的方式就是使用 ...

  3. Sharepoint 2013 网站集的删除与还原

    一.可以通过三种方法删除网站集: 1.打开Sharepoint 2013 管理页面首页 ---> 单击‘应用程序管理(Application Management)’并进入该页面 ---> ...

  4. asp.net identity 2.2.0 在WebForm下的角色启用和基本使用(一)

    基本环境:asp.net 4.5.2 仔细看了在Webform下,模板就已经启动了角色控制,已经不用再进行设置了.直接调用相关类就可以了.这和原来在网站根目录下配置Web.config完全不同了. 相 ...

  5. fuelux.tree用法

    ACE中带了一个树,样式和操作挺好看的,就是难用,下面记录下如何使用. 首先fuelux.tree接受的数据源是Json,关键这个Json还不怎么标准,可接受的Json示例如下: { '刑侦': { ...

  6. 深入Python(4):深拷贝和浅拷贝

    一.前奏:熟悉Python内存管理 在Python中,变量在第一次赋值时自动声明,在创建---也就是赋值的时候,解释器会根据语法和右侧的操作数来决定新对象的类型. 引用计数器:一个内部跟踪变量 引用计 ...

  7. Servlet 生命周期、工作原理

    按照单例的编码规则,Servlet本身只是一个Java,结构并不是单例结构. 只是Web容器在维护这些Servlet的时候只给创建一个实例存在JVM中,用户请求服务时,服务器只调用它已经实例化好的Se ...

  8. LeetCode Read N Characters Given Read4 II - Call multiple times

    原题链接在这里:https://leetcode.com/problems/read-n-characters-given-read4-ii-call-multiple-times/ 题目: The ...

  9. mongoDB(3) mapReduce

    mapReduce是大数据的核心内容,但实际操作中别用这个,所谓的mapReduce分两步 1.map:将数据分别取出,Map函数调用emit(key,value)遍历集合中所有的记录,将key与va ...

  10. [SLAM]2D激光线特征提取

    Nguyen, V., et al. (2007)."A comparison of line extraction algorithms using 2D range data for i ...