PHP 배열 학습: 배열 요소를 비교하고 첫 번째와 두 번째로 큰 값을 얻습니다.
이전 글에서는 버블 알고리즘을 사용하여 배열 요소를 오름차순으로 정렬하는 방법을 소개했습니다. 관심이 있으시면 링크를 클릭하여 → "PHP 배열 학습: 버블 알고리즘을 사용하여 정렬"을 읽어보세요. 오름차순으로 요소를!" 》. 이번에는 PHP 배열 학습 시리즈를 이어가며 배열 요소를 비교하여 첫 번째와 두 번째로 큰 값을 얻는 방법을 소개합니다.
이 기사의 주제는 "주어진 숫자 집합의 최대값과 두 번째 최대값 계산"입니다.
구현 아이디어: 이 숫자 집합을 래핑하려면 배열을 사용하므로 배열 요소의 크기를 비교해야 합니다.
두 변수 $max
및 $secMax
설정 >, 얻은 최대값과 두 번째 최대값을 저장하는 데 사용됩니다. 그러나 먼저 모든 사람에게 초기 값을 할당하고 배열의 첫 번째 요소와 두 번째 요소를 할당해야 합니다. 하지만 $max
가 $secMax
보다 큰지 확인하세요. 따라서 $max
和$secMax
,用于存放获取到的最大值和第二大值。不过需要先给大家赋初值,将数组第一个元素和第二个元素赋给它们。但要保证$max
比$secMax
大,所以要做一个判断
if ($arr[0] > $arr[1]){//这个if是为了防止出现数组第一个值就是最大值 $secMax = $arr[1]; } else if ($arr[0] < $arr[1]){ $max = $arr[1]; }
然后使用for循环,不断遍历$arr数组。【不懂的可以阅读文章《PHP循环学习三:如何使用for循环语句遍历数组》】
for ($i = 0;$i< count($arr);$i++){ //循环数组 //循环体 }
在循环体中,不断将$max
、$secMax
与数组每个值($arr[$i]
)比较:
如果
$arr[$i]
比$max
大,则将$max
值赋给$secMax
,把$arr[$i]
赋给$max
,
if ($arr[$i] > $max){ $secMax = $max; $max = $arr[$i]; }
而如果
$arr[$i]
小于$max
,但$arr[$i]
又大于$secMax
,则只交换$secMax
和$arr[$i]
间的值 ,将$arr[$i]
复制给$secMax
판단을 내린 다음 for 루프를 사용하여 $arr 배열을 계속 순회해야 합니다. [이해가 되지 않는다면 "PHP 루프 학습 3: 방법을 읽어보세요. for 루프 문을 사용하여 배열을 순회하세요if ($arr[$i] < $max && $arr[$i] > $secMax){ $secMax = $arr[$i]; }
로그인 후 복사 》】
function takeNum($arr){ //定义了两个变量$max和$secMax来存放最大和第二大的数值 $max = $arr[0]; $secMax = $arr[0]; if ($arr[0] > $arr[1]){//这个if是为了防止出现数组第一个值就是最大值 $secMax = $arr[1]; } else if ($arr[0] < $arr[1]){ $max = $arr[1]; } for ($i = 0;$i< count($arr);$i++){//循环数组 if ($arr[$i] > $max){ $secMax = $max; $max = $arr[$i]; } else if ($arr[$i] < $max && $arr[$i] > $secMax){ $secMax = $arr[$i]; } } echo "最大值为".$max.",第二大值为".$secMax; }
루프 본문에서 $max
, $secMax
를 배열의 각 값($arr[$i]
) 비교:
$arr[$i]
가 더 큰 경우$max
보다$max
값을$secMax
에 할당하고$arr[$i]
를 <에 할당 code>$max,$arr = array(555,5,1,429,18,21,52,2,52,9,3,); takeNum($arr);
로그인 후 복사- 그리고
$arr[$i]
가 다음보다 작은 경우$max
, 그러나 < code>$arr[$i]가$secMax
보다 큰 경우$secMax
및 < code>$arr[$i] 사이에서 값이 교환됩니다.$arr[$i]
를$secMax
에 복사하세요.if (判断条件) { 语句块; }
로그인 후 복사이런 방식으로 연속 비교하면 $max가 배열의 최대값을 저장하고 $secMax가 배열의 두 번째로 큰 값을 저장하는지 확인할 수 있습니다.
전체 구현 코드를 살펴보겠습니다.
if (判断条件) { 语句块 1; } else { 语句块 2; }
로그인 후 복사테스트: 다음 배열을 정의하고 takeNum($arr) 함수를 호출하여 출력을 확인합니다.
첫 번째 가장 큰 값이 555인 것을 볼 수 있습니다. , 두 번째로 큰 값은 429입니다. 출력 결과가 다음과 같은지 확인하세요.if (判断条件 1) { 语句块 1; } else if (判断条件 2) { 语句块 2; } else if (判断条件 3) { 语句块 3; } ......
로그인 후 복사OK, 출력 결과가 정확합니다.
다음으로 사용된 지식 포인트에 대해 이야기하겠습니다. 루프에 대해서는 더 말할 필요가 없습니다. ("
PHP 루프 학습 시리즈 요약" 기사를 읽어보세요) if else 문에 대해 간략하게 소개하겠습니다. if else 문은 프로세스 제어에서 조건부 판단을 기반으로 한 실행 유형입니다. 이 명령문이 실행되면 먼저 조건을 판단한 후 판단 결과에 따라 해당 연산을 수행합니다. if 문, if...else 문, if...else if...else 문 등 세 가지 유형으로 나눌 수 있습니다.
if 문의 구문: rrreeeif...else 문의 구문:
rrreee🎜if...else if...else 문의 구문: 🎜rrreee🎜 좋습니다, 그게 전부입니다. 다른 아이디어가 있으면 클릭해 보세요. → →🎜php 동영상 튜토리얼🎜🎜🎜마지막으로 PHP 배열에 대한 무료 동영상 튜토리얼을 추천합니다: 🎜PHP 함수 배열 배열 함수 동영상 설명🎜, 와서 배워보세요! 🎜위 내용은 PHP 배열 학습: 배열 요소를 비교하고 첫 번째와 두 번째로 큰 값을 얻습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!
- 그리고

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











PHP 8.4는 상당한 양의 기능 중단 및 제거를 통해 몇 가지 새로운 기능, 보안 개선 및 성능 개선을 제공합니다. 이 가이드에서는 Ubuntu, Debian 또는 해당 파생 제품에서 PHP 8.4를 설치하거나 PHP 8.4로 업그레이드하는 방법을 설명합니다.

CakePHP에서 데이터베이스 작업은 매우 쉽습니다. 이번 장에서는 CRUD(생성, 읽기, 업데이트, 삭제) 작업을 이해하겠습니다.

CakePHP는 PHP용 오픈 소스 프레임워크입니다. 이는 애플리케이션을 훨씬 쉽게 개발, 배포 및 유지 관리할 수 있도록 하기 위한 것입니다. CakePHP는 강력하고 이해하기 쉬운 MVC와 유사한 아키텍처를 기반으로 합니다. 모델, 뷰 및 컨트롤러 gu

CakePHP에 로그인하는 것은 매우 쉬운 작업입니다. 한 가지 기능만 사용하면 됩니다. cronjob과 같은 백그라운드 프로세스에 대해 오류, 예외, 사용자 활동, 사용자가 취한 조치를 기록할 수 있습니다. CakePHP에 데이터를 기록하는 것은 쉽습니다. log() 함수는 다음과 같습니다.

VS Code라고도 알려진 Visual Studio Code는 모든 주요 운영 체제에서 사용할 수 있는 무료 소스 코드 편집기 또는 통합 개발 환경(IDE)입니다. 다양한 프로그래밍 언어에 대한 대규모 확장 모음을 통해 VS Code는
