<!--简单的计算器-->
 <!DOCTYPE html>
 <html>
 <head>
     <title>PHP实现简单计算器</title>
     <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
 </head>
 <?php
     $num1=true;
     $num2=true;
     $numa=true;
     $numb=true;
     $message="";

     //单路分支
     if(isset($_GET["sub"])){
         if($_GET["num1"]==""){
             $num1=false;
             $message.="第一个数不能为空";
         }

         if(!is_numeric($_GET["num1"])){
             $numa=false;
             $message.="第一个数不是数字";
         }

         if($_GET["num2"]==""){
             $num2=false;
             $message.="第二个值不能为空";
         }

         if(!is_numeric($_GET["num2"])){
             $numb=false;
             $message.="第二个数不是数字";
         }
         //判断不能为空,判断为数字
         if($num1 && $num2 && $numa && numb){

             $sum=0;
             //多路分支的switch
             switch ($_GET["ysf"])
             {
                 case '+':
                     $sum=$_GET["num1"]+$_GET["num2"];
                     break;
                 case '-':
                     $sum=$_GET["num1"]-$_GET["num2"];
                     break;
                 case 'x':
                     $sum=$_GET["num1"]*$_GET["num2"];
                     break;
                 case '/':
                     $sum=$_GET["num1"]/$_GET["num2"];
                     break;
                 case '%':
                     $sum=$_GET["num1"]%$_GET["num2"];
                     break;
             }
         }
     }
 ?>
 <body>
     <table align="center" border="1" width="500">
         <caption><h1>计算器</h1></caption>
         <form action="jsq.php">
         <tr>
             <td>
                 <input type="text" size="5" name="num1" value="<?php echo $_GET["num1"]; ?>">
             </td>
             <td>
                 <select name="ysf">
                     <option value="+" <?php if($_GET["ysf"]=="+") echo "selected"; ?>>+</option>
                     <option value="-" <?php if($_GET["ysf"]=="-") echo "selected"; ?>>-</option>
                     <option value="x" <?php if($_GET["ysf"]=="x") echo "selected"; ?>>x</option>
                     <option value="/" <?php if($_GET["ysf"]=="/") echo "selected"; ?>>/</option>
                     <option value="%" <?php if($_GET["ysf"]=="%") echo "selected"; ?>>%</option>
                 </select>
             </td>
             <td>
                 <input type="text" size="5" name="num2" value="<?php echo $_GET["num2"]; ?>">
             </td>
             <td>
                 <input type="submit" name="sub" value="计算">
             </td>
         </tr>

         <?php
             if(isset($_GET["sub"])){
                 echo '<tr><td colspan="5">';
                 if($num1 && $num2 && $numa && $numb){
                     echo "结果:".$_GET["num1"]."".$_GET["ysf"]."".$_GET["num2"]."=".$sum;
                 }else{
                     echo "$message";
                 }
                 echo '</td></tr>';
             }
         ?>
         </form>
     </table>
 </body>
 </html>

PHP实现简单计算器的更多相关文章

  1. 1.C#WinForm基础制作简单计算器

    利用c#语言编写简单计算器: 核心知识点: MessageBox.Show(Convert.ToString(comboBox1.SelectedIndex));//下拉序号 MessageBox.S ...

  2. 菜鸟学Android编程——简单计算器《一》

    菜鸟瞎搞,高手莫进 本人菜鸟一枚,最近在学Android编程,网上看了一些视频教程,于是想着平时手机上的计算器应该很简单,自己何不尝试着做一个呢? 于是就冒冒失失的开撸了. 简单计算器嘛,功能当然很少 ...

  3. PAT 06-1 简单计算器

    想看一般简单计算器实现的看客不好意思了,这不是你想要点东西,此处题设为“只能进行加减乘除”.“都是整数”.”优先级相同“和"从左到右".此题来自PAT(http://www.pat ...

  4. php大力力 [005节] php大力力简单计算器001

    2015-08-22 php大力力005. php大力力简单计算器001: 上网看视频,看了半天,敲击代码,如下: <html> <head> <title>简单计 ...

  5. c#部分---网吧充值系统;简易的闹钟;出租车计费;简单计算器;对战游戏;等额本金法计算贷款还款利息等;随机生成10个不重复的50以内的整数;推箱子;

    网吧充值系统namespace ConsoleApplication1 { class Program { struct huiyuan { public string name; public st ...

  6. JavaWeb学习记录(二十)——Model1模式(javaBean+jsp)实现简单计算器案例

    ¨JSP技术提供了三个关于JavaBean组件的动作元素,即JSP标签,它们分别为: ¨<jsp:useBean>标签:用于在JSP页面中查找或实例化一个JavaBean组件. ¨< ...

  7. 一个用WPF做的简单计算器源代码

    一.界面设计XAML代码 <Window x:Class="fengjisuanqi.MainWindow" xmlns="http://schemas.micro ...

  8. hdu 1237 简单计算器

    题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=1237 简单计算器 Description 读入一个只包含 +, -, *, / 的非负整数计算表达式, ...

  9. 李洪强漫谈iOS开发[C语言-042]-简单计算器

    李洪强漫谈iOS开发[C语言-042]-简单计算器

随机推荐

  1. $(document).ready(function (){}) , $(function(){}) , $().ready(function(){}) , jquery(function(){}) , (function($){})(jquery)有什么区别

    $(document).ready(function(){...}) , $().ready(function(){...}) ,  $(function(){...}) , jquery(funct ...

  2. 探究linux文件

    一.Linux的文件: 文件名区分大小写:Linux没有文件拓展名:文件名支持长文件名,含空格,少部分标点符号. - _最好不要用空格 1 GUI图形用户界面:让简单的问题更加简单: CLI命令行界面 ...

  3. hadoop入门之设置datanode的心跳时间的方法

    做作业的过程中发现,把一节点停掉,dfsadmin和50070都无法马上感知到一个data node已经死掉 HDFS默认的超时时间为10分钟+30秒.这里暂且定义超时时间为timeout计算公式为: ...

  4. eclipse常用10个快捷键[转载]

    转载自:http://www.jb51.net/softjc/139467.html

  5. java转义字符探究恢复

    今天工作的时候,遇到了个奇怪的问题,是关于字符串转义与替换的.最后终于解决了,特总结下. 小demo, package com.westward; public class Demo { /** * ...

  6. myeclipse9.x,10.x 安装时出现pulse-one-64,failed to load the JNI shared library

  7. Jmeter简单测试elasticsearch服务器

    入门知识: Jmeter是一个非常好用的压力测试工具.  Jmeter用来做轻量级的压力测试,非常合适,只需要十几分钟,就能把压力测试需要的脚本写好. 顾名思义:压力测试,就是  被测试的系统,在一定 ...

  8. ROS主题发布订阅控制真实的机器人下位机

    先模拟控制小乌龟 新建cmd_node.ccpp文件: #include"ros/ros.h" #include"geometry_msgs/Twist.h" ...

  9. Rhel6-keepalived+lvs配置文档

    系统环境: rhel6 x86_64 iptables and selinux disabled 主机: 192.168.122.119 server19.example.com 192.168.12 ...

  10. Program E-- CodeForces 18C

    Description Once Bob took a paper stripe of n squares (the height of the stripe is 1 square). In eac ...