Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Berfungsi untuk mencari kuasa dalam c++

Berfungsi untuk mencari kuasa dalam c++

下次还敢
下次还敢asal
2024-04-28 18:15:26336semak imbas

C++ menyediakan berbilang kaedah untuk mencari kuasa: gunakan fungsi pow() atau fungsi std::pow(), yang menerima parameter asas dan eksponen. Menggunakan gelung, untuk eksponen integer positif, darabkan asas dengan masa eksponen. Gunakan algoritma carian binari untuk mencari kuasa dengan cepat melalui kaedah bahagi dan takluk. Untuk eksponen integer negatif, gunakan formula 1 / kuasa(asas, -eksponen) untuk pengiraan.

Berfungsi untuk mencari kuasa dalam c++

Fungsi kuasa dalam C++

Terdapat banyak cara untuk meningkatkan kuasa dalam C++. Cara paling mudah ialah menggunakan fungsi pow(), yang menerima dua parameter: asas dan eksponen. Contohnya: pow() 函数,它接受两个参数:底数和指数。例如:

<code class="cpp">#include <cmath>

int main() {
  double base = 2.0;
  int exponent = 3;
  double result = pow(base, exponent); // 结果为 8.0
}</code>

对于整数指数,可以使用 std::pow()

<code class="cpp">#include <cmath>

int main() {
  int base = 2;
  int exponent = 3;
  int result = std::pow(base, exponent, long long); // 结果为 8
}</code>
Untuk eksponen integer, anda boleh menggunakan fungsi std::pow(), yang menerima tiga parameter: asas, eksponen integer dan jenis sasaran. Contohnya:

<code class="cpp">int power(int base, int exponent) {
  int result = 1;
  for (int i = 0; i < exponent; i++) {
    result *= base;
  }
  return result;
}</code>

Cara lain ialah menggunakan gelung. Contohnya, untuk eksponen integer positif:

<code class="cpp">int power(int base, int exponent) {
  if (exponent == 0) {
    return 1;
  } else if (exponent < 0) {
    return 1 / power(base, -exponent);
  } else {
    int result = 1;
    for (int i = 0; i < exponent; i++) {
      result *= base;
    }
    return result;
  }
}</code>

Untuk eksponen integer negatif, anda boleh menggunakan formula berikut:

<code class="cpp">int power(int base, int exponent) {
  if (exponent == 0) {
    return 1;
  } else if (exponent < 0) {
    return 1 / power(base, -exponent);
  } else {
    int result = 1;
    while (exponent > 0) {
      if (exponent % 2 == 1) {
        result *= base;
      }
      base *= base;
      exponent /= 2;
    }
    return result;
  }
}</code>
Akhir sekali, anda juga boleh menggunakan algoritma carian binari untuk mencari kuasa dengan cepat. Contohnya: 🎜rrreee

Atas ialah kandungan terperinci Berfungsi untuk mencari kuasa dalam c++. 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