Rumah >pembangunan bahagian belakang >tutorial php >Program PHP untuk mengira bilangan sifar mengekor dalam pemfaktoran nombor
Faktorial integer bukan negatif, dilambangkan dengan simbol "!", ialah hasil darab semua integer positif kurang daripada atau sama dengan nombor itu, dengan kata lain, faktorial nombor diperoleh dengan mendarabkan nombor itu dengan semua integer positif di bawahnya.
Sebagai contoh, pemfaktoran 5 dikira sebagai:
5 = 5 x 4 x 3 x 2 x 1 = 120
Begitu juga, faktorial 0 ditakrifkan sebagai 1:
0!
Faktor sering digunakan dalam matematik dan kombinatorik untuk mengira pilih atur, gabungan dan susunan objek. Faktor ini juga mempunyai aplikasi dalam kebarangkalian, kalkulus dan pelbagai bidang matematik yang lain.
Dalam pemfaktoran nombor, sifar mengekor merujuk kepada bilangan sifar berturut-turut dalam perwakilan perpuluhan bagi pemfaktoran.
Contohnya 10 = 10 x 9 x 8 x 7 x 6 x 5 x 4 x 3 x 2 x 1
Lakukan operasi darab
10 = 3,628,800
Faktorial bagi 10 ialah 3,628,800.
Sifar mengekor dalam pemfaktoran 10 ialah 2 kerana bilangan sifar berturut-turut pada penghujung pemfaktoran.
<?php function countTrailingZeroes($number) { $count = 0; // Divide the number by powers of 5 and count the quotient // The quotient represents the number of trailing zeroes while ($number >= 5) { $number = (int) ($number / 5); $count += $number; } return $count; } // Test the function $number = 20; $trailingZeroes = countTrailingZeroes($number); echo "The factorial of $number has $trailingZeroes trailing zeroes.<br>"; // Test the function $number = 14; $trailingZeroes = countTrailingZeroes($number); echo "The factorial of $number has $trailingZeroes trailing zeroes."; ?>
The factorial of 20 has 4 trailing zeroes. The factorial of 14 has 2 trailing zeroes.
Fungsi PHP yang dipanggil countTrailingZeroes dipanggil dalam kod sampel. Fungsi ini mengira bilangan sifar mengekor dalam pemfaktoran nombor tertentu. Ia melakukan ini dengan membahagikan nombor dengan kuasa 5 dan mengira hasil bagi. Selagi nombor lebih besar daripada atau sama dengan 5, gelung while akan terus dilaksanakan. Di dalam gelung, nombor dibahagikan dengan 5 menggunakan pembahagian integer untuk mengira bilangan faktor 5 dalam nombor semasa. Tambahkan hasil bahagi yang terhasil pada pembolehubah yang dipanggil $count, yang menjejaki bilangan sifar mengekori. Selepas gelung berakhir, kembalikan nilai kiraan akhir daripada fungsi.
Di bawah fungsi, terdapat kes ujian di mana fungsi dipanggil dengan nilai 123. Kes ujian ini mengira bilangan sifar mengekor dalam pemfaktoran 20 menggunakan fungsi countTrailingZeroes. Hasilnya disimpan dalam pembolehubah yang dipanggil $trailingZeroes. Akhir sekali, gunakan gema untuk memaparkan hasil, memberikan nombor input dan bilangan sifar mengekor dalam pemfaktorannya
Dalam kes ini, faktorial bagi 20 ialah 2,432,902,008,176,640,000, jadi faktorialnya mempunyai 4 sifar pada akhirnya, manakala faktorial bagi 14 ialah 87,178,291,200. Jadi ia mempunyai 2 sifar pada penghujung faktorialnya.
Menyediakan program PHP untuk mengira bilangan sifar tertinggal dalam pemfaktoran nombor tertentu dengan cekap. Ia menggunakan gelung sementara untuk membahagikan nombor dengan kuasa 5 dan mengira hasil bagi, mewakili bilangan sifar mengekor. Dengan menggunakan pendekatan ini, program ini mengelakkan keperluan untuk mengira keseluruhan faktorial. Teknik ini berfungsi kerana sifar mengekor dalam faktorial berasal dari faktor 5. Oleh itu, dengan mengira faktor 5, program boleh menentukan bilangan sifar mengekor dengan tepat. Kod ini menyediakan penyelesaian yang mudah dan cekap untuk mengira sifar tertinggal dalam pemfaktoran, berguna untuk pelbagai aplikasi matematik dan pengaturcaraan.
Atas ialah kandungan terperinci Program PHP untuk mengira bilangan sifar mengekor dalam pemfaktoran nombor. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!