存档:

 <!DOCTYPE html>
<html>
<head>
<title>PHP实现计算器</title>
</head> <body>
<?php
$mess = "";
if(isset($_POST["sub"])){
if($_POST["num1"] == ""){
$mess .= "第一个数不能为空!<br>";
}
else{
if(!is_numeric($_POST["num1"])){
$mess .="第一个数必须是数字!<br>";
}
} if($_POST["num2"]==""){
$mess .="第二个数不能为空!<br>";
}
else{
if(!is_numeric($_POST["num2"])){
$mess .="第二个数必须是数字!<br>";
}
else{
if($_POST["opt"]=="/"&&$_POST["num2"]==0){
$mess .="除数不能为0";
}
}
}
}
?>
<table border="1" align="center" width="400">
<form action="" method="post">
<caption><h1>计算器</h1></caption>
<tr>
<td>
<input type="text" size="4" name="num1" value="<?php echo $_POST["num1"]?>" />
</td> <td>
<select name="opt">
<option value="+" <?php echo $_POST["opt"]=="+" ? "selected" : "" ?>>+</option>
<option value="-" <?php echo $_POST["opt"]=="-" ? "selected" : "" ?>>-</option>
<option value="x" <?php echo $_POST["opt"]=="x" ? "selected" : "" ?>>x</option>
<option value="/" <?php echo $_POST["opt"]=="/" ? "selected" : "" ?>>/</option>
<option value="%" <?php echo $_POST["opt"]=="%" ? "selected" : "" ?>>%</option>
</select>
</td> <td>
<input type="text" size="4" name="num2" value="<?php echo $_POST["num2"]?>" />
</td> <td>
<input type="submit" name="sub" value="计算" />
</td>
</tr>
</form>
<?php
if(isset($_POST["sub"])){
echo '<tr><td colspan="4">';
if(!$mess){
$sum=0;
switch($_POST["opt"]){
case "+":
$sum = $_POST["num1"] + $_POST["num2"];
break;
case "-":
$sum = $_POST["num1"] - $_POST["num2"];
break;
case "x":
$sum = $_POST["num1"] * $_POST["num2"];
break;
case "/":
$sum = $_POST["num1"] / $_POST["num2"];
break;
case "%":
$sum = $_POST["num1"] % $_POST["num2"];
break;
} echo "结果:{$_POST['num1']} {$_POST['opt']} {$_POST['num2']} = {$sum}";
}
else{
echo $mess;
}
echo '</td></tr>';
}
?>
</table>
</body>
</html>

结果如下:

用php实现简单的自制计算器的更多相关文章

  1. 利用ANTLR4实现一个简单的四则运算计算器

    利用ANTLR4实现一个简单的四则运算计算器 ANTLR4介绍 ANTLR能够自动地帮助你完成词法分析和语法分析的工作, 免去了手写去写词法分析器和语法分析器的麻烦 它是基于LL(k)的, 以递归下降 ...

  2. 完成一段简单的Python程序,用于实现一个简单的加减乘除计算器功能

    #!/bin/usr/env python#coding=utf-8'''完成一段简单的Python程序,用于实现一个简单的加减乘除计算器功能'''try: a=int(raw_input(" ...

  3. php实现一个简单的四则运算计算器

    php实现一个简单的四则运算计算器(还不支持括号的优先级).利用栈这种数据结构来计算表达式很赞. 这里可以使用栈的结构,由于php的数组“天然”就有栈的特性,这里直接就利用了数组.当然可以使用栈结构写 ...

  4. Qt简单项目--加法计算器(详细代码注释)

    Qt的简单案例--加法计算器(详细代码注释) 一.项目结构 二.项目代码 widget.h #ifndef WIDGET_H #define WIDGET_H //预编译指令, 为了避免头文件被重复包 ...

  5. 作业1开发一个简单的python计算器

    开发一个简单的python计算器 实现加减乘除及拓号优先级解析 用户输入 1 - 2 * ( (60-30 +(-40/5) * (9-2*5/3 + 7 /3*99/4*2998 +10 * 568 ...

  6. 老男孩python作业5-开发一个简单的python计算器

    开发一个简单的python计算器 实现加减乘除及拓号优先级解析 用户输入 1 - 2 * ( (60-30 +(-40/5) * (9-2*5/3 + 7 /3*99/4*2998 +10 * 568 ...

  7. HTML自制计算器

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  8. JS事件 编程练习-自制计算器 使用JS完成一个简单的计算器功能。实现2个输入框中输入整数后,点击第三个输入框能给出2个整数的加减乘除。

    编程练习 使用JS完成一个简单的计算器功能.实现2个输入框中输入整数后,点击第三个输入框能给出2个整数的加减乘除. 提示:获取元素的值设置和获取方法为:例:赋值:document.getElement ...

  9. Java对象简单实用(计算器案例)

    对 Java中的对象与属性,方法的使用,简单写了个案例 import java.util.Scanner; class Calculste { int a; //定义两个整数 int b; Strin ...

随机推荐

  1. VSCode调试C++

    在ubuntu下调试C++ 本人觉得VSCode比较好用. 步骤如下: 1. 编写.cpp,.h文件 自行完成自己的程序. 2. 编写CMakeLists.txt.下面是一个比较好用的模板. 根目录为 ...

  2. VC中TRACE ASSERT VERIFY之用法

    一.TRACE宏     当选择了Debug目标,并且afxTraceEnabled变量被置为TRUE时,TRACE宏也就随之被激活了.但在程序的Release版本中,它们是被完全禁止的.下面是一个典 ...

  3. 闲话缓存:ZFS 读缓存深入研究-ARC(二)

    Solaris ZFS ARC的改动(相对于IBM ARC) 如我前面所说,ZFS实现的ARC和IBM提出的ARC淘汰算法并不是完全一致的.在某些方面,它做了一些扩展: ·         ZFS A ...

  4. eclipse删除的文件如何恢复。

    1.如果不小心删除了单个文件或者文件夹. 鼠标点击上级目录 Ctrl+z就可以恢复了. 如果没有恢复,就右击项目,选择Resore from Local History 然后选择你所删除的文件,选择恢 ...

  5. Linux---关闭Elasticsearch进程,并重新启动

    有时候,当我们启动elasticsearch之后, 经过很长一段时间没有操作, 自己已经忘了是否已经启动了elasticsearch, 这时候我们可以通过下面的方式验证是否启动,并重新启动: step ...

  6. CentOS7 安装 Docker 以及 Shipyard管理端

    简介: Docker 是一个开源工具,它可以让创建和管理 Linux 容器变得简单.容器就像是轻量级的虚拟机,并且可以以毫秒级的速度来启动或停止. Docker 帮助系统管理员和程序员在容器中开发应用 ...

  7. Web | jQuery快速上手

    jQuery伴随前端走过一段辉煌的时光,虽然现在已经慢慢的走下顶峰,但是过去的很多项目都是用jQuery写的,它的一些封装思想也非常值得借鉴,懂得jQuery是前端必不可少的. jQuery顶级对象 ...

  8. 由使用request-promise-native想到的异步处理方法

    由使用request-promise-native想到的异步处理方法 问题场景 因为js语言的特性,使用node开发程序的时候经常会遇到异步处理的问题.对于之前专长App开发的我来说,会纠结node中 ...

  9. NodeJ node.js基础

    因为是Node服务器端的,怎样实现前台和后台请求以及回应 URL(由什么组成的 ),传输的内容:表单数据  文件数据 [图片.压缩包.各种后缀文件] URL的组成 URL由三部分组成: 协议类型 , ...

  10. 洛谷P1501 [国家集训队]Tree II(LCT)

    题目描述 一棵n个点的树,每个点的初始权值为1.对于这棵树有q个操作,每个操作为以下四种操作之一: + u v c:将u到v的路径上的点的权值都加上自然数c: - u1 v1 u2 v2:将树中原有的 ...