如何使用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 相关文章推荐
提问的智慧(2)
Oct 09 PHP
function.inc.php超越php
Dec 09 PHP
php str_pad 函数用法简介
Jul 11 PHP
由php的call_user_func传reference引发的思考
Jul 23 PHP
调试一段PHP程序时遇到的三个问题
Jan 17 PHP
解析php中array_merge与array+array的区别
Jun 21 PHP
PHP中鲜为人知的10个函数
Feb 28 PHP
PHP实现补齐关闭的HTML标签
Mar 22 PHP
PHP实现的随机红包算法示例
Aug 14 PHP
PHP面向对象五大原则之开放-封闭原则(OCP)详解
Apr 04 PHP
php使用curl伪造来源ip和refer的方法示例
May 08 PHP
PHP __call()方法实现委托示例
May 20 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
全国FM电台频率大全 - 28 甘肃省
2020/03/11 无线电
PHP stristr() 函数(不区分大小写的字符串查找)
2010/06/03 PHP
php无限极分类递归排序实现方法
2014/11/11 PHP
php实现excel中rank函数功能的方法
2015/01/20 PHP
thinkPHP导出csv文件及用表格输出excel的方法
2015/12/30 PHP
Yii2基于Ajax自动获取表单数据的方法
2016/08/10 PHP
PHP长连接实现与使用方法详解
2018/02/11 PHP
求解开jscript.encode代码的asp函数
2007/02/28 Javascript
建立良好体验度的Web注册系统ajax
2007/07/09 Javascript
再说AutoComplete自动补全之实现原理
2011/11/05 Javascript
js弹出确认是否删除对话框
2014/03/27 Javascript
JQuery中serialize()用法实例分析
2015/02/06 Javascript
使用window.prompt()实现弹出用户输入的对话框
2015/04/13 Javascript
基于Arcgis for javascript实现百度地图ABCD marker的效果
2015/09/12 Javascript
JavaScript知识点总结之如何提高性能
2016/01/15 Javascript
javascript代码优化的8点总结
2018/01/29 Javascript
vue路由组件按需加载的几种方法小结
2018/07/12 Javascript
jquery获取元素到屏幕四周可视距离的方法
2018/09/05 jQuery
bootstrap 日期控件 datepicker被弹出框dialog覆盖的解决办法
2019/07/09 Javascript
Vue使用Element实现增删改查+打包的步骤
2020/11/25 Vue.js
[36:29]2018DOTA2亚洲邀请赛 4.1 小组赛 A组加赛 LGD vs TNC
2018/04/02 DOTA
Python科学画图代码分享
2017/11/29 Python
Python内存读写操作示例
2018/07/18 Python
python中@property和property函数常见使用方法示例
2019/10/21 Python
Python使用docx模块实现刷题功能代码
2020/02/13 Python
python求前n个阶乘的和实例
2020/04/02 Python
Jupyter notebook运行Spark+Scala教程
2020/04/10 Python
一款利用html5和css3实现的3D立方体旋转效果教程
2016/04/26 HTML / CSS
惠普美国官方商店:HP Official Store
2016/08/28 全球购物
迪拜领先运动补剂零售品牌中文站:Sporter商城
2019/08/20 全球购物
学生会宣传部部长竞选演讲稿
2014/04/25 职场文书
2016元旦晚会主持人开场白和结束语
2015/12/03 职场文书
2016年少先队活动总结
2016/04/06 职场文书
详解MySQL的Seconds_Behind_Master
2021/05/18 MySQL
Python爬虫基础之简单说一下scrapy的框架结构
2021/06/26 Python
小喇叭开始广播了! 四十多年前珍贵老照片
2022/05/09 无线电