如何使用php实现评委评分器


Posted in PHP onJuly 31, 2015

用选择排序法第一步从输入的数组中找到最高分和最低分,然后去掉一个最高分和一个最低分,得出选手的平均分。

1. 实现代码

<?php
function fairScore(&$arr)
{ //选择排序法的第一步,这里只需要找到这个数组中的最大值和最小值即可,没必要对整个数组排序
 $minVal = $arr[0];
 $minIndex = 0;
 $maxVal = $arr[0];
 $maxIndex = 0;
 $sum = 0;
 for ($i=1;$i<count($arr);$i++)
 {
  if ($arr[$i]<$minVal)
  {
   $minVal = $arr[$i];;
   $minIndex = $i;
  }
  if ($arr[$i]>$maxVal)
  {
   $maxVal = $arr[$i];
   $maxIndex = $i;
  }
 }
 echo "最高分是:".$maxVal." 最低分是:".$minVal."<br/>";
 for ($i=0;$i<count($arr);$i++)
 {
  $sum +=$arr[$i];
 }
 $sum -=($minVal+$maxVal);
 echo "一共有".count($arr)."个评委,去掉最高分和最低分后的平均分是".$sum/(count($arr)-2);
}
 
$score = @$_REQUEST['score'];//第一次打开页面时会因为没有输入数据,所以没法提交。这里加@是为了去除浏览器notice警告
$aScore = explode(" ",$score);
 
?>
 
<html>
<head>
<title>去掉最高分和最低分后的平均分</title>
<meta http-equiv="content-type" content="text/html;charset=utf-8"/>
</head>
 
<body>
<form action ="fairScore.php" method="post">
<span>请输入各个评委的打分,中间用空格隔开</span><br/><!--在输入时,每两个数之间只能有一个空格-->
<input type="text" name="score" value="<?php echo $score;?>" /><br/>
<input type="submit" value="提交计算平均成绩"/>
</form>
 
<?php
fairScore($aScore);
?>
</body>
<html>

2. 运行效果图

如何使用php实现评委评分器

以上就是本文的全部内容,希望大家可以喜欢。

PHP 相关文章推荐
PHP的FTP学习(二)[转自奥索]
Oct 09 PHP
不用GD库生成当前时间的PNG格式图象的程序
Oct 09 PHP
如何使用php绘制在图片上的正余弦曲线
Jun 08 PHP
php取整函数ceil,floo,round的用法及介绍
Aug 31 PHP
PHP获取中英混合字符串长度的方法
Jun 07 PHP
PHP5.3与5.5废弃与过期函数整理汇总
Jul 10 PHP
PHP中把错误日志保存在系统日志中(Windows系统)
Jun 23 PHP
为你总结一些php信息函数
Oct 21 PHP
教你php如何实现验证码
Jan 20 PHP
PHP实现的堆排序算法详解
Aug 17 PHP
PHP微商城开源代码实例
Mar 27 PHP
基于Laravel-admin 后台的自定义页面用法详解
Sep 30 PHP
php给图片加文字水印
Jul 31 #PHP
初识通用数据库操作类――前端easyui-datagrid,form(php)
Jul 31 #PHP
使用Appcan客户端自动更新PHP版本号(全)
Jul 31 #PHP
php使用Imagick生成图片的方法
Jul 31 #PHP
如何使用Gitblog和Markdown建自己的博客
Jul 31 #PHP
php自定义类fsocket模拟post或get请求的方法
Jul 31 #PHP
详解Grunt插件之LiveReload实现页面自动刷新(两种方案)
Jul 31 #PHP
You might like
PHP 第二节 数据类型之转换
2012/04/28 PHP
PHP二维数组排序的3种方法和自定义函数分享
2014/04/09 PHP
PHP使用逆波兰式计算工资的方法
2015/07/29 PHP
TP5框架安全机制实例分析
2020/04/05 PHP
sina的lightbox效果。
2007/01/09 Javascript
关于IE7 IE8弹出窗口顶上
2008/12/22 Javascript
6款新颖的jQuery和CSS3进度条插件推荐
2013/03/05 Javascript
实用的Jquery选项卡TAB示例代码
2013/08/28 Javascript
js如何获取object类型里的键值
2014/02/18 Javascript
js获取checkbox值的方法
2015/01/28 Javascript
最流行的Node.js精简型和全栈型开发框架介绍
2015/02/26 Javascript
JavaScript中Form表单技术汇总(推荐)
2016/06/26 Javascript
jQuery+HTML5+CSS3制作支持响应式布局时间轴插件
2016/08/10 Javascript
JS防止网页被嵌入iframe框架的方法分析
2016/09/13 Javascript
js数组操作方法总结(必看篇)
2016/11/22 Javascript
基于javascript实现最简单选项卡切换
2017/02/01 Javascript
jQuery插件HighCharts绘制简单2D柱状图效果示例【附demo源码】
2017/03/21 jQuery
js实现股票实时刷新数据案例
2017/05/14 Javascript
JavaScript之json_动力节点Java学院整理
2017/06/29 Javascript
vue+render+jsx实现可编辑动态多级表头table的实例代码
2020/04/01 Javascript
python抓取需要扫微信登陆页面
2019/04/29 Python
python制作填词游戏步骤详解
2019/05/05 Python
Python tensorflow实现mnist手写数字识别示例【非卷积与卷积实现】
2019/12/19 Python
Python非单向递归函数如何返回全部结果
2020/12/18 Python
使用phonegap检测网络状态的方法
2017/03/30 HTML / CSS
荷兰演唱会和体育比赛订票网站:viagogo荷兰
2018/04/08 全球购物
亚马逊加拿大网站:Amazon.ca
2020/01/06 全球购物
Ruby如何实现动态方法调用
2012/11/18 面试题
英语生日邀请函
2014/01/23 职场文书
中式结婚主持词
2014/03/14 职场文书
安全施工标语
2014/06/07 职场文书
IT工程师岗位职责
2014/07/04 职场文书
个人租房协议书样本
2014/10/01 职场文书
农村老人去世追悼词
2015/06/23 职场文书
Python必备技巧之字符数据操作详解
2022/03/23 Python
使用Bandicam录制鼠标指针并附带点击声音,还可以添加点击动画效果
2022/04/11 数码科技