如何使用php實(shí)現(xiàn)評(píng)委評(píng)分器
用選擇排序法第一步從輸入的數(shù)組中找到最高分和最低分,然后去掉一個(gè)最高分和一個(gè)最低分,得出選手的平均分。
1. 實(shí)現(xiàn)代碼
<?php
function fairScore(&$arr)
{ //選擇排序法的第一步,這里只需要找到這個(gè)數(shù)組中的最大值和最小值即可,沒(méi)必要對(duì)整個(gè)數(shù)組排序
$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)."個(gè)評(píng)委,去掉最高分和最低分后的平均分是".$sum/(count($arr)-2);
}
$score = @$_REQUEST['score'];//第一次打開(kāi)頁(yè)面時(shí)會(huì)因?yàn)闆](méi)有輸入數(shù)據(jù),所以沒(méi)法提交。這里加@是為了去除瀏覽器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>請(qǐng)輸入各個(gè)評(píng)委的打分,中間用空格隔開(kāi)</span><br/><!--在輸入時(shí),每?jī)蓚€(gè)數(shù)之間只能有一個(gè)空格-->
<input type="text" name="score" value="<?php echo $score;?>" /><br/>
<input type="submit" value="提交計(jì)算平均成績(jī)"/>
</form>
<?php
fairScore($aScore);
?>
</body>
<html>
2. 運(yùn)行效果圖

以上就是本文的全部?jī)?nèi)容,希望大家可以喜歡。
相關(guān)文章
PHP中關(guān)于PDO數(shù)據(jù)訪問(wèn)抽象層的功能操作實(shí)例
下面小編就為大家?guī)?lái)一篇PHP中關(guān)于PDO數(shù)據(jù)訪問(wèn)抽象層的功能操作實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-09-09
thinkPHP框架動(dòng)態(tài)配置用法實(shí)例分析
這篇文章主要介紹了thinkPHP框架動(dòng)態(tài)配置用法,結(jié)合實(shí)例形式分析了thinkPHP3.0之前的動(dòng)態(tài)配置操作技巧及緩存相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2018-06-06
PHP設(shè)計(jì)模式之觀察者模式入門與應(yīng)用案例詳解
這篇文章主要介紹了PHP設(shè)計(jì)模式之觀察者模式入門與應(yīng)用,結(jié)合具體案例形式詳細(xì)分析了PHP觀察者模式的相關(guān)概念、原理、使用方法及操作注意事項(xiàng),需要的朋友可以參考下2019-12-12
ThinkPHP自定義函數(shù)解決模板標(biāo)簽加減運(yùn)算的方法
這篇文章主要介紹了ThinkPHP自定義函數(shù)解決模板標(biāo)簽加減運(yùn)算的方法,實(shí)例分析了ThinkPHP中自定義函數(shù)在模板標(biāo)簽中的使用技巧,需要的朋友可以參考下2015-07-07
CI框架無(wú)限級(jí)分類+遞歸的實(shí)現(xiàn)代碼
CodeIgniter是一個(gè)輕量級(jí)但功能強(qiáng)大的PHP框架,基于MVC設(shè)計(jì)模式,提供了一套豐富的類庫(kù),簡(jiǎn)單易學(xué),高效實(shí)用。下面給大家介紹CI框架無(wú)限級(jí)分類+遞歸的實(shí)現(xiàn)代碼,感興趣的朋友參考下吧2016-11-11

