<%@ 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. BOM&Navigator对象

    <!-- BOM:Brower Object Model 浏览器对象模型 这个模型方便操作浏览器 浏览器对应的对象就是windows对象,这个可以通过查阅DHTML API获得 --> & ...

  2. ActiveMQ: 搭建Broker集群(cluster)

    上一篇介绍了基于Networks of Borkers的2节点HA方案,这一篇继续来折腾Networks of Brokers,当应用规模日渐增长时,2节点的broker可能仍然抗不住访问压力,这时候 ...

  3. Java内存泄露及性能调优实例

    内存泄漏及解决方法 1)系统崩溃前的一些现象 每次垃圾回收的时间越来越长,由之前的10ms延长到50ms左右,FullGC的时间也有之前的0.5s延长到4.5s:FullGC的次数越来越多,最频繁时隔 ...

  4. PHP多台服务器跨域SESSION共享

    网站业务规模和访问量的逐步发展,原本由单台服务器.单个域名的迷你网站架构已经无法满足发展需要. 此时我们可能会购买更多服务器,并且启用多个二级子域名以频道化的方式,根据业务功能将网站分布部署在独立的服 ...

  5. C#编程之委托与事件四(一)【转】

    C#编程之委托与事件(一)     本文试图在.net Framework环境下,使用C#语言来描述委托.事件的概貌.希望本文能有助于大家理解委托.事件的概念,理解委托.事件的用途,理解它的C#实现方 ...

  6. StringBuffer与StringBuilder有什么区别

    package String比较; /* * StringBuffer与StringBuilder有什么区别 * StringBuilder是JDK5增加的一个新类,功能几乎与StringBuffer ...

  7. Fixing “WARNING: UNPROTECTED PRIVATE KEY FILE!” on Linux

    If you are getting this error then you probably reset the permissions on your hidden .ssh directory ...

  8. java 截取pdf

    最近在读一本电子书,pdf中频繁引用后文的内容(页码),必须实时的跳过去看,但是扫描版的pdf的页码往往从封面就开始计数,而且盗版还经常有一些做广告的页面,这就导致pdf reader 索引的页面并不 ...

  9. 判断日期是否符合yyyy-mm格式

    !Regex.IsMatch(dr["DMAKEDATE"].ToString(),@"^(?<year>\\d{2,4})-(?<month>\ ...

  10. Unit03 - 对象内存管理 、 继承的意义(上)

    Unit03 - 对象内存管理 . 继承的意义(上) 1.内存管理:由JVM来管理的  1)堆:    1.1)存储所有new出来的对象(包含成员变量)    1.2)没有任何引用所指向的对象就是垃圾 ...