Rumah > Artikel > pembangunan bahagian belakang > Program PHP untuk Mengira Sifar Mengekor dalam Faktorial Nombor
Faktorial integer bukan negatif, yang dilambangkan dengan simbol "!", ialah hasil darab semua integer positif kurang daripada atau sama dengan nombor itu. Dalam erti 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! = 1
Faktorial sering digunakan dalam matematik dan kombinatorik untuk mengira pilih atur, gabungan dan susunan objek. Mereka juga mempunyai aplikasi dalam kebarangkalian, kalkulus, dan pelbagai bidang matematik yang lain.
Dalam pemfaktoran nombor, sifar mengekor merujuk kepada bilangan sifar berturut-turut pada penghujung perwakilan perpuluhan faktorial.
Contohnya 10! = 10 x 9 x 8 x 7 x 6 x 5 x 4 x 3 x 2 x 1
Melakukan pendaraban
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.
Dalam kod contoh, fungsi PHP dipanggil countTrailingZeroes. Fungsi ini mengira bilangan sifar mengekor dalam pemfaktoran nombor tertentu. Ia melakukan ini dengan membahagikan nombor dengan kuasa 5 dan mengira hasil bagi. Gelung while berterusan selagi nombor lebih besar daripada atau sama dengan 5. Dalam gelung, nombor dibahagikan dengan 5 menggunakan pembahagian integer untuk mengira bilangan faktor 5 dalam nombor semasa. Hasil bahagi yang terhasil ditambah pada pembolehubah yang dipanggil $count, yang menjejaki kiraan sifar mengekori. Selepas gelung selesai, kiraan akhir dikembalikan daripada fungsi.
Di bawah fungsi, terdapat kes ujian di mana fungsi dipanggil dengan nilai 123. Ini mengira bilangan sifar tertinggal dalam pemfaktoran 20 menggunakan fungsi countTrailingZeroes. Hasilnya disimpan dalam pembolehubah yang dipanggil $trailingZeroes. Akhir sekali, hasilnya dipaparkan menggunakan gema, memberikan nombor input dan kiraan sifar tertinggal dalam faktorialnya.
Dalam kes ini, pemfaktoran 20 ialah 2,432,902,008,176,640,000 jadi kiraan sifar mengekor dalam pemfaktorannya ialah 4 dan pemfaktoran bagi 14 ialah 87,178,291,200. Jadi kiraan sifar mengekor dalam faktorialnya ialah 2.
Program PHP yang disediakan dengan cekap mengira kiraan sifar tertinggal dalam pemfaktoran nombor tertentu. Ia menggunakan gelung sementara untuk membahagikan nombor dengan kuasa 5 dan mengira hasil bagi, mewakili bilangan sifar mengekor. Dengan memanfaatkan pendekatan ini, program ini mengelakkan keperluan untuk mengira keseluruhan faktorial. Teknik ini berkesan kerana mengekor sifar dalam hasil faktorial daripada faktor 5. Oleh itu, dengan mengira faktor 5, atur cara menentukan kiraan sifar mengekor dengan tepat. Kod ini menyediakan penyelesaian yang mudah dan cekap untuk mengira sifar tertinggal dalam pemfaktoran, membantu dalam pelbagai aplikasi matematik dan pengaturcaraan.
Atas ialah kandungan terperinci Program PHP untuk Mengira Sifar Mengekor dalam Faktorial Nombor. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!