用php实现简单的自制计算器
存档:
<!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实现简单的自制计算器的更多相关文章
- 利用ANTLR4实现一个简单的四则运算计算器
利用ANTLR4实现一个简单的四则运算计算器 ANTLR4介绍 ANTLR能够自动地帮助你完成词法分析和语法分析的工作, 免去了手写去写词法分析器和语法分析器的麻烦 它是基于LL(k)的, 以递归下降 ...
- 完成一段简单的Python程序,用于实现一个简单的加减乘除计算器功能
#!/bin/usr/env python#coding=utf-8'''完成一段简单的Python程序,用于实现一个简单的加减乘除计算器功能'''try: a=int(raw_input(" ...
- php实现一个简单的四则运算计算器
php实现一个简单的四则运算计算器(还不支持括号的优先级).利用栈这种数据结构来计算表达式很赞. 这里可以使用栈的结构,由于php的数组“天然”就有栈的特性,这里直接就利用了数组.当然可以使用栈结构写 ...
- Qt简单项目--加法计算器(详细代码注释)
Qt的简单案例--加法计算器(详细代码注释) 一.项目结构 二.项目代码 widget.h #ifndef WIDGET_H #define WIDGET_H //预编译指令, 为了避免头文件被重复包 ...
- 作业1开发一个简单的python计算器
开发一个简单的python计算器 实现加减乘除及拓号优先级解析 用户输入 1 - 2 * ( (60-30 +(-40/5) * (9-2*5/3 + 7 /3*99/4*2998 +10 * 568 ...
- 老男孩python作业5-开发一个简单的python计算器
开发一个简单的python计算器 实现加减乘除及拓号优先级解析 用户输入 1 - 2 * ( (60-30 +(-40/5) * (9-2*5/3 + 7 /3*99/4*2998 +10 * 568 ...
- HTML自制计算器
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- JS事件 编程练习-自制计算器 使用JS完成一个简单的计算器功能。实现2个输入框中输入整数后,点击第三个输入框能给出2个整数的加减乘除。
编程练习 使用JS完成一个简单的计算器功能.实现2个输入框中输入整数后,点击第三个输入框能给出2个整数的加减乘除. 提示:获取元素的值设置和获取方法为:例:赋值:document.getElement ...
- Java对象简单实用(计算器案例)
对 Java中的对象与属性,方法的使用,简单写了个案例 import java.util.Scanner; class Calculste { int a; //定义两个整数 int b; Strin ...
随机推荐
- 4、Android-数据存储方案(文件存储/SharedPreferences)
简介: 任何一个应用程序都需要和数据进行交互 对于软件来说微博.QQ等都需要关系的是数据 没有数据的应用程序是一个没有灵魂的软件 而且还没有实际的用途 可以认为是单机 4.1.持久化技术的简介 数据持 ...
- windows ionic bash: command not found
安装好了node.js和npm后,执行npm install -g cordova ionic后,成功安装,但是执行ionic命令后,返回 command not found. 配置好了环境变量后,仍 ...
- Maven创建项目一些常见的问题
1 .创建的项目中没有src/main/java.没有src/test/java 主要原因在于在创建项目的时候,使用的是系统自带的jdk,修改方法: 右键项目——Properties——javaBui ...
- ASP.NET Core MVC中的IActionFilter.OnActionExecuted方法执行时,Controller中Action返回的对象是否已经输出到Http Response中
我们在ASP.NET Core MVC项目中有如下HomeController: using Microsoft.AspNetCore.Mvc; namespace AspNetCoreActionF ...
- ubuntu snmp Error: unknown payload OID
ubuntu snmp Error: unknown payload OID 2013-11-12 15:51:48 标签:ubuntu Error snmp unknown payload OID ...
- 接入Gobelieve IM开发平台的DEMO代码
接入Gobelieve IM开发平台的DEMO代码, 请求头部: Authorization: Basic $base64(appid:$hex_md5(appsecret))意思是 appsecre ...
- [Oracle]记一次由sequence引发的enq sv-contention等待事件
数据库版本:11.2.0.4 RAC(1)问题现象从EM里面可以看到,在23号早上8:45~8:55时,数据库等待会话暴增,大约到了80个会话.通过查看EM的SQL信息,发现等待产生于SQL语句 se ...
- Ajax缓存
一.Ajax缓存的好处 这种设计使客户端对一些静态页面内容的请求,比如图片,css文件,js脚本等,变得更加快捷,提高了页面的响应速度,也节省了网络通信资源. 二.Ajax缓存的不足 Ajax缓存虽然 ...
- Java并发编程(七)终结线程
线程的状态 一个线程会有如下五个状态 1.新建:线程在被创建时会暂时处于这种状态,此时系统为线程分配资源并对其进行初始化 2.就绪:此时线程已经可以运行,只是系统没有为其分配CPU时间. 3.运行:系 ...
- 在vscode中使用webpack中安装的echarts文件失败,dom获取class名,图表不显示
所有的东西都是新学的,所以遇到了很多问题: (1)首先,在电脑上已经安装了node的情况下, 在npm中安装echarts:npm install echarts --save mac系统在最前面加上 ...