首頁 > 後端開發 > php教程 > PHP演算法練習九:將全部偶數轉到全部奇數之前

PHP演算法練習九:將全部偶數轉到全部奇數之前

藏色散人
發布: 2023-04-10 15:04:01
原創
4050 人瀏覽過

在這篇《PHP演算法練習八:判斷給定的三個數是否能構成直角三角形》中給大家介紹了怎麼判斷給定的三個數是否能構成直角三角形,今天繼續開始演算法練習系列內容~

本文的中心的問題「編寫一個PHP程序,從給定的整數數組中創建新數組,將所有偶數移到所有奇數之前」。

先跟大家介紹下偶數和奇數的概念:

  • #偶數是可以被2整除的整數。正偶數也稱為雙數。如果某數是2的倍數,那麼它就是偶數,可以表示為2n;如果不是,它就是奇數,可表示為2n 1(n為整數),即奇數除以二的餘數是一。

  • 奇數(odd)就是指不能被2整除的整數 ,數學表達式形式為:2k 1, 奇數還可以分成正奇數和負奇數。

下面就開始正題~

PHP程式碼如下:

<?php
function test($numbers)
{
    $index = 0;
    for ($i = 0; $i < sizeof($numbers); $i++)
    {
        if ($numbers[$i] % 2 == 0)
        {
            $temp = $numbers[$index];
            $numbers[$index] = $numbers[$i];
            $numbers[$i] = $temp;
            $index++;
        }
    }
    return $numbers;
}

$result = test([1, 2, 5, 3, 5, 4, 6, 9, 11] );
echo "新数组: " . implode(&#39;,&#39;, $result);
登入後複製

輸出結果是:

新数组: 2,4,6,3,5,1,5,9,11
登入後複製

可以看到偶數都在奇數前面。

我們給的原始陣列內容是[1, 2, 5, 3, 5, 4, 6, 9, 11],然後透過計算「$ numbers[$i] % 2」結果是否等於0,也是判斷奇數偶數的關鍵公式,然後判斷出奇數偶數,再進行調換位置就行了。

至於新陣列則用implode()函數把陣列元素組合為字串輸出即可。

implode()函數的作用就是傳回由陣列元素組合成的字串。

最後推薦給大家最新、最全面的《PHP影片教學》~快來學習吧!

以上是PHP演算法練習九:將全部偶數轉到全部奇數之前的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板