Rumah >pembangunan bahagian belakang >tutorial php >Jangan terlepas hubungan cinta-benci antara nombor PHP dan Armstrong

Jangan terlepas hubungan cinta-benci antara nombor PHP dan Armstrong

藏色散人
藏色散人asal
2021-07-29 17:52:162128semak imbas

Penonton yang dihormati, adakah kepala besar anda dipenuhi dengan soalan? Haha, jangan keliru, hari ini saya akan memperkenalkan anda kepada satu lagi kaedah yang menyeronokkan. Terjemahan vernakular tajuk artikel ini ialah "Gunakan PHP untuk menyemak sama ada nombor adalah nombor Armstrong." nombor narcissus, jadi apakah sebenarnya nombor ini? Bagaimana untuk melaksanakannya menggunakan program PHP? Mari kita perkenalkan mereka satu persatu~

Pertama sekali, saya akan memperkenalkan kepada anda definisi nombor daffodil iaitu Nombor Armstrong:

Nombor daffodil juga dipanggil nombor super-lengkap, nombor narsis, nombor autoexponential, nombor Armstrong atau nombor Armstrong. Nombor narcissus ialah nombor 3 digit di mana jumlah kuasa ke-3 digit dalam setiap digit adalah sama dengan dirinya (contohnya: 1^3 5^3 3^3 = 153).

Anda sepatutnya faham sekarang, kemudian mari teruskan:

Buka editor terus dan masukkan kod!

<?php
function armstrong_number($num) {
    $sl = strlen($num);
    $sum = 0;
    $num = (string)$num;
    for ($i = 0; $i < $sl; $i++) {
        $sum = $sum + pow((string)$num{$i},$sl);
    }
    if ((string)$sum == (string)$num) {
        return "True";
    } else {
        return "False";
    }
}
echo "153是阿姆斯特朗数吗?".armstrong_number(153);
echo "<br>21是阿姆斯特朗数吗?".armstrong_number(21);
echo "<br>4587是阿姆斯特朗数吗?".armstrong_number(4587);

Mari lihat hasilnya:

Jangan terlepas hubungan cinta-benci antara nombor PHP dan Armstrong

Dalam contoh di atas, kami memberikan tiga nombor untuk penghakiman, masing-masing 153, 21, 4587.

Jelas sekali 153 ialah nombor Armstrong, tetapi bukan 21 mahupun 4587, jadi palsu dikembalikan.

Malah, jika anda ingin menentukan sama ada ia adalah nombor Armstrong dalam program PHP, titik paling kritikal ialah formula penentuannya!

Seperti yang dinyatakan dalam definisi di atas, nombor yang sepadan dengan jumlah tiga kuasa nombor dalam setiap digit adalah sama dengan dirinya dipanggil nombor Armstrong, yang juga merupakan nombor daffodil.

Kemudian bahagian kod utama dalam contoh ialah "$sum =$sum pow((string)$num{$i},$sl);".

Di sini pow() ialah fungsi terbina dalam PHP, digunakan untuk mengira x dinaikkan kepada kuasa ke-y.

Pada ketika ini, adakah ia mudah difahami?

Walaupun tidak sukar, saya secara peribadi berpendapat ia lebih menarik idea ini juga berharap dapat membantu rakan-rakan yang memerlukan~

Tutorial video PHPSila klik -> https://www.php.cn/course/list/29/type/2.html

Atas ialah kandungan terperinci Jangan terlepas hubungan cinta-benci antara nombor PHP dan Armstrong. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn