Maison >développement back-end >C++ >Comment calculer Log Base 2 en C/C ?

Comment calculer Log Base 2 en C/C ?

DDD
DDDoriginal
2024-10-26 22:54:03589parcourir

How to Calculate Log Base 2 in C/C  ?

Comment calculer Log Base(2) en C/C

En C/C, il existe deux fonctions logarithmiques intégrées : log (base e) et log10 (base 10). Cependant, pour les calculs impliquant log base(2), ces fonctions ne sont pas directement applicables.

Solution mathématique :

Une approche mathématique simple pour calculer log base(2) est :

log<sub>2</sub> (<em>x</em>) = log<sub><em>y</em></sub> (<em>x</em>) / log<sub><em>y</em></sub> (2)

où vous pouvez être n'importe quelle base. Pour plus de clarté en C/C , cette équation devient :

<code class="c">log2(x) = log(x) / log(2);</code>

Cette formule vous permet de calculer log base(2) en utilisant la fonction log existante, qui prend une base arbitraire.

Exemple :

Pour calculer le log base(2) du nombre 16 :

<code class="c">#include <stdio.h>
#include <math.h>

int main() {
  double x = 16;
  double log2 = log(x) / log(2);

  printf("log base(2) of %f is: %.2f\n", x, log2);

  return 0;
}</code>

Sortie :

log base(2) of 16.000000 is: 4.00

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn