Dalam pengaturcaraan, terdapat banyak situasi di mana data perlu diproses, terutamanya semasa memproses senarai data. Untuk skor tertinggi atau terendah dalam senarai data, selalunya perlu untuk mengalih keluar dan mengira semula purata Operasi ini sangat biasa dalam PHP. Artikel ini akan memperkenalkan cara menggunakan PHP untuk mengalih keluar skor tertinggi daripada senarai data dan mengira semula purata.
1. Dapatkan senarai data
Pertama, kita perlu mendapatkan senarai data untuk operasi seterusnya. Dalam PHP, anda boleh menggunakan tatasusunan untuk menyimpan senarai data. Berikut ialah tatasusunan contoh yang mengandungi markah beberapa pelajar:
$scoreList = tatasusunan(
tatasusunan("name"=>"Tom", "skor"=>80),
tatasusunan("name"=>"Bob", "skor"=>90),
tatasusunan("nama"=>"Lucy", "skor"=>95),
tatasusunan ("name"=>"John", "skor"=>85),
tatasusunan("nama"=>"Mary", "skor"=>92),
); 🎜>
Susun atur ini mengandungi data untuk 5 pelajar, setiap pelajar mempunyai nama dan markah sendiri. Kami boleh mencetak nama dan markah setiap pelajar melalui gelung:
foreach($scoreList as $stu){
echo $stu["name"].":".$stu["skor "] ."
";
}
Keputusan output adalah seperti berikut:
Tom: 80
Bob: 90
Lucy: 95
John: 85
Mary: 92
2 Alih keluar markah tertinggi
Sekarang, kita perlu mencari markah tertinggi dalam kalangan pelajar ini dan mengeluarkannya. PHP menyediakan cara mudah untuk mencari nilai maksimum dalam tatasusunan, fungsi max(). Anda boleh menggunakan kod berikut untuk mendapatkan skor tertinggi dalam tatasusunan:
$highestScore = max(array_column($scoreList, "score"));
Fungsi array_column() digunakan di sini untuk mendapatkan tatasusunan semua skor di dalamnya, dan kemudian gunakan fungsi max() untuk mencari nilai maksimum di antara mereka. Sudah tentu, jika jumlah data adalah kecil, gelung juga boleh digunakan untuk mencari skor tertinggi.
Selepas mencari skor tertinggi, anda perlu mengalih keluarnya daripada tatasusunan. Ini boleh dilakukan menggunakan kod berikut:
foreach($scoreList as $key => $stu){
if($stu["skor"] == $highestScore){
unset( $scoreList[$key]);
}
}
Fungsi unset() digunakan di sini untuk memadamkan elemen yang sepadan dalam tatasusunan.
3 Kira purata
Kini, skor tertinggi telah dialih keluar daripada tatasusunan. Kita perlu mengira semula purata. Ini boleh dilakukan menggunakan kod berikut:
$totalScore = array_sum(array_column($scoreList, "skor"));
$avgScore = $totalScore / count($scoreList);
Fungsi array_sum() digunakan di sini untuk mengira jumlah semua skor dalam tatasusunan, dan kemudian fungsi count() digunakan untuk mengira bilangan elemen dalam tatasusunan untuk mendapatkan purata.
4. Paparkan keputusan
Akhir sekali, paparkan purata yang dikira. Anda boleh menggunakan kod berikut untuk melengkapkan:
gema "Selepas mengalih keluar markah tertinggi, purata markah peperiksaan ini ialah: ".$avgScore;
Keputusan output adalah seperti berikut:
Alih Keluar Selepas markah tertinggi, purata markah peperiksaan ini ialah: 89.25
Melalui langkah di atas, kami berjaya mengalih keluar markah tertinggi daripada senarai data dan mengira semula purata markah. Dalam pembangunan sebenar, pelarasan dan pengoptimuman yang sesuai perlu dibuat mengikut situasi sebenar, tetapi idea dan kaedah teras adalah serupa. Pada masa yang sama, ia juga perlu memberi perhatian kepada ketepatan dan keselamatan data semasa memproses senarai data.
Atas ialah kandungan terperinci php mengeluarkan skor tertinggi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!