PHP - Vòng lặp for tìm phần tử lớn nhất trong mảng
Cho mảng gồm các phần tử sau:
$array = [ 1, 23, 32, 5,43, 321, 312, 352, 2, 13 ,153, 21,32 ,1 ];
Hãy viết chương trình PHP tìm số lớn nhất trong mảng đó, và in ra vị trí nó đang đứng trong mảng.
Bài giải
-------------------- ######## --------------------
Để tìm số lớn nhất thì bước đầu tiên ta sẽ tạo một biến $max
lưu phần tử đầu tiên $array[0]
lại và xem như nó là phần tử lớn nhất, sau đó duyệt qua từng phần tử tiếp theo rồi so sánh, nếu phần tử nào lớn hơn $max thì lập tức gán giá trị của phần tử đó cho $max.
Theo yêu cầu của đề bài ta phải in ra vị trí phần tử lớn nhất, vì vậy ta sẽ tạo một biến tên là $vitri, và cách gán giá trị cho nó thì cũng tương tự như gán cho $max.
Để đếm tổng số phần tử thì ta dùng hàm count.
Bài viết này được đăng tại [free tuts .net]
$array = [ 1, 23, 32, 5,43, 321, 312, 352, 2, 13 ,153, 21,32 ,1 ]; $max = null; $position = null; for ($i = 0; $i < count($array); $i++) { if ($max == null){ $max = $array[$i]; $position = $i; } else { if ($array[$i] > $max){ $max = $array[$i]; $position = $i; } } } echo "Giá trị lớn nhất là $max, nằm tại vị trí $position";
Câu hỏi thường gặp liên quan:
- PHP - Vòng lặp for In ra các số chẵn từ 0 đến 100
- PHP - Vòng lặp for tìm phần tử lớn nhất trong mảng
- PHP - Vòng lặp for in ra lần lượt các ký tự của chuỗi
- PHP - Vòng lặp for tính tổng S(n) = 1 + 1/2 + 1/3 + 1/4 +… 1/n
- PHP Vòng lặp for tính tổng S(n) = x*2 + x*4 + ⋯ + x*2n
- PHP - Vòng lặp for bước nhảy 2 in ra các số lẻ từ 0 dến 100
- PHP - Vòng lặp for in ra thông tin sinh viên trong mảng