前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >计算器案例

计算器案例

作者头像
十月梦想
发布2018-08-29 10:39:05
1.4K0
发布2018-08-29 10:39:05
举报
文章被收录于专栏:十月梦想十月梦想
<html>
<!--php计算器,进行简单计算,本程序采用php多分支语句switch case为主导语法,当用户正确输入两个合法数字包括数字或者小数方可正确计算,用户数据采用post提交-->
<?php
	$n1=$_POST['num1']; //动态获取表单中用户计算的数据和运算符号
	$n2=$_POST['num2'];
	$f=$_POST['ysf'];
	//$result=$n1." "."$f"."$n2";
	switch($f) 
	{ //对应的不同运算符号,将不同的两个数据进行相对应的运算,将不同运算符的运算赋值给一个新的变量result(新值)
		case'+':
		$result=$n1+$n2;
		break;
		case'-':
		$result=$n1-$n2;
		break;
		case'*':
		$result=$n1*$n2;
		break;
		case'/':
		$result=$n1/$n2;
		break;
		case'%':
		$result=$n1%$n2;
		break;
	}
	?>
	<head>
			<title>php计算器采用SWITCH多分支</title>
	</head>
	<body bgcolor="yellow">
	<h1 align="center" style="font-size:50px;color:pink;">php计算器升级V1.1</h1>
	<form action="" method="post" align="center"><!--提交到本页面,无需写action的值-->
		请输入第一个数值:<input type="text"name="num1" style="background:purple;color:blue;font-size:20px;border:0" value="<?php echo isset($n1)?$n1:"";?>">
		<br>
		请选择需要计算的符号:<select name="ysf" style="margin:10px;font-size:20px;background-color:rgba(0,205,80,0.7)">
		<!--php代码可以写入在任何一个部位,需求当用户选择某个运算符时,固定该运算符,下拉默认是selected,用php动态输出即完成该需求-->
		<option value="+" <?php if($f=='+') {echo 'selected';}?> >+</option>
		<option value="-" <?php if($f=='-') {echo 'selected';}?> >-</option>
		<option value="*" <?php if($f=='*') {echo 'selected';}?> >*</option>
		<option value="/" <?php if($f=='/') {echo 'selected';}?> >/</option>
		<option value="%" <?php if($f=='%') {echo 'selected';}?> >%</option>
		</select>
		<br>
		<!--在input内加入value,value值用动态输出,用户是否写入了计算数据,写入了直接输出改数字,用三目运算符进行判断,存在直接输出到对应的ipnut框-->
		请输入第二个数值:<input type="text" name="num2"style="background:pink;color:grey;font-size:20px;border:0" value="<?php echo isset($n2)?$n2:"";?>">
		<br>
		<input type="submit" value="计算" align="center" style=" margin:10px;background:black;border:0;font-size:20px;color:white">	<input type="reset" value="清除" align="center" style=" margin:10px;background:black;border:0;font-size:20px;color:white">
		<br>
		<textarea name="" id="" cols="60"  style="background:black;color:white;font-size:30px">

		<?php
		/*if($n1!=false &&$n1!=false){
			echo isset($result)?"运算结果:{$n1}{$f}{$n2}={$result}":"";

		}
		else if($n1==false){

			echo "Error:请输入第一个数,第一个数是否为空";
		
		}
		else if($n2=="")
		{
			echo "Error:请输入第二个数,请确认第二个数是否为空";	
		}
		else if($n1==false&&$n2=false)
		{
			echo "Error:请输入两个操作数进行计算,请检查第一个和第二个数是否为空";
		}*/
		//上述注释掉的代码,测试结果为第一个为空提示错误,第一个有数字具体的值不会提示第二个数值错误,抛弃
		//is_numeric($var)判断一个变量是否为数字或者数字字符串,符合正常运算需求,采用is_numeric函数判断,符合的输出,不符合报错,采用if else if多分支
		if(is_numeric($n1)&& is_numeric($n2))
			{
			echo isset($result)?"运算结果:{$n1}{$f}{$n2}={$result}":"";

			}
		else if(is_numeric($n2))
			{
				echo "Error:请输入第一个数,第一个数是否为空";
			}
		else if(is_numeric($n1))
			{
				echo "Error:请输入第二个数,第二个数是否为空";
			}
		/*else if(is_numeric($n2))
			{
				echo "Error:请输入第一个数,第一个数是否为空";
			}*/
		?>
		</textarea>>
		
		
		</form>
	</body>

</html>
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-11-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档