<%@ 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. 从客户端中检测到有潜在危险的 request.form值[解决方法]

    当页面编辑或运行提交时,出现“从客户端中检测到有潜在危险的request.form值”问题,该怎么办呢?如下图所示: 下面博主汇总出现这种错误的几种解决方法:问题原因:由于在asp.net中,Requ ...

  2. IOS第二天多线程-04简化单例模式

    ******HMSingleton-ARC.h // .h文件 #define HMSingletonH(name) + (instancetype)shared##name; // .m文件 #de ...

  3. JAVA程序设计 实验一

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计 班级:1353  姓名:李海空  学号:20135329 成绩:             指导教师:娄嘉鹏 ...

  4. YII2 blockui

    https://packagist.org/packages/ayrozjlc/yii2-blockui

  5. mysql集群 MySQL Cluster

    <?php /* 郑重说明2015年6月11日16:28:14,目前为止MySQL Cluster 社区版不支持INNODB,商业版支持,但是授权价格20W左右,so看此文档之前,考虑下钱 My ...

  6. 一些asp.net使用

    1.英文格式的日期转为中文格式 eg:string englishDate="03-04-2012"; string chineseDate=Regex.replace(engli ...

  7. C++和C代码互相调用是不可避免的

    C++ 编译器能够兼容C语言发编译方式 C++编译器会优先使用C++ 编译的方式 extern 关键字能强制让C++编译器进行C方式的编译 external “C” { //do C-style co ...

  8. 【后台测试】Linux下小试jmeter

    ◆版权声明:本文出自胖喵~的博客,转载必须注明出处.  转载请注明出处:http://www.cnblogs.com/by-dream/p/5784288.html 前言 上一篇主要讲了在Window ...

  9. 配置fabric-crashlytics教程

    1. 注册账户 登录网站  https://try.crashlytics.com/ 来注册新的账户,审核通过时间为几个小时或者1到2天不等.然后注册时候输入的邮箱就会收到如下的邀请涵 2. acco ...

  10. cocos2dx 3.x(动态改变精灵的背景图片)

    //更换精灵CCSprite的图片有两种方式. //直接通过图片更换 //使用setTexture(CCTexture2D*)函数,可以重新设置精灵类的纹理图片. // auto bg = Sprit ...