PHP數組練習

來源:互聯網
上載者:User

題目:

1、跳水比賽,8個評委打分,運動員的成績是8個成績去掉一個最高分和去掉一個最低分。剩下6個分數的平均分就是最後得分。使用一維數組實現打分功能。

2、並且把最高分和最低分的評委找出來。

解決方案:

第一個頁面:

<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8" ></head><body>    <h1>請裁判輸入分數</h1>        <form action="result02.php" method="post">            裁判1<input type="text" name ="one"><br/>            裁判2<input type="text" name ="two"><br/>            裁判3<input type="text" name ="three"><br/>            裁判4<input type="text" name ="four"><br/>            裁判5<input type="text" name ="five"><br/>            裁判6<input type="text" name ="six"><br/>            裁判7<input type="text" name ="seven"><br/>            裁判8<input type="text" name ="eight"><br/>            <input type="submit" value = "提交">        </form></body></html>

 

第二個頁面:result02.php

<?php        //接收資料        $p1=$_REQUEST['one'];        $p2=$_REQUEST['two'];        $p3=$_REQUEST['three'];        $p4=$_REQUEST['four'];        $p5=$_REQUEST['five'];        $p6=$_REQUEST['six'];        $p7=$_REQUEST['seven'];        $p8=$_REQUEST['eight'];                //把每個人輸入的值 放入到數組中        $arr = array($p1,$p2,$p3,$p4,$p5,$p6,$p7,$p8);        //print_r($arr);        //取出最大和最小的值        $p_max=max($arr);        $p_min=min($arr);        //print_r($arr);        //echo $p_max,$p_min;        //echo "<br />";        //定義變數計算總分        $total=0;/*        for($i=0;$i<count($arr);$i++){            //echo $arr[$i]."<br />";            $total+=$arr[$i];                }*/        foreach($arr as $v){                        $total+=$v;        }        //echo $total."<br/>";        //減去最高最低分,最後得分        //平均分        //round函數 保留小數位||這是四捨五入法保留3位小數        $last=($total-max($arr)-min($arr))/(count($arr)-2);        //$last=($total-max($arr)-min($arr));        echo '除去最高分和最低分的最後得分為:'.($total-max($arr)-min($arr))."<br/>";        echo '除去最高分和最低分的最後得分的平均分為:'.round($last,3)."<br/>";        //找出最大值和最小值對映的key :array_search函數.        $max_k=array_search(max($arr),$arr);        $min_k=array_search(min($arr),$arr);        echo '最高分是第'.($max_k+1).'評委打'.max($arr).'分<br />';        echo '最低分是第'.($min_k+1).'評委打'.min($arr).'分<br />';?>

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.