Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Mengira Logaritma Asas 2 (log2) dalam C/C?
Mengira Logaritma Asas 2 dalam C/C
Dalam C dan C , tiada fungsi terbina dalam khusus untuk mengira asas logaritma 2 (log2). Walaupun fungsi seperti log() untuk asas e dan log10() untuk asas 10 tersedia, log2() tidak disediakan secara langsung.
Penyelesaian: Transformasi Matematik
Untuk mengatasi had ini, seseorang boleh bergantung pada penukaran matematik yang mudah. Formula untuk mengira log2 adalah seperti berikut:
log2(x) = log(x) / log(2)
di mana:
Menggunakan Fungsi Terbina dalam
Menggunakan formula di atas, anda boleh melaksanakan fungsi log2() menggunakan binaan -in log() fungsi:
C :
<code class="cpp">double log2(double x) { return log(x) / log(2); }</code>
C:
<code class="c">double log2(double x) { return log(x) / log(2.0); }</code>
Contoh Penggunaan:
<code class="cpp">#include <iostream> #include <math.h> int main() { double x = 10; double log2_result = log2(x); std::cout << "log2(" << x << ") = " << log2_result << std::endl; return 0; }</code>
Output:
log2(10) = 3.321928
Atas ialah kandungan terperinci Bagaimana untuk Mengira Logaritma Asas 2 (log2) dalam C/C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!