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

Berfungsi untuk mencari kuasa dalam c++

下次还敢
Lepaskan: 2024-04-28 18:15:26
asal
512 orang telah melayarinya

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() 函数,它接受两个参数:底数和指数。例如:

#include <cmath>

int main() {
  double base = 2.0;
  int exponent = 3;
  double result = pow(base, exponent); // 结果为 8.0
}
Salin selepas log masuk

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

#include <cmath>

int main() {
  int base = 2;
  int exponent = 3;
  int result = std::pow(base, exponent, long long); // 结果为 8
}
Salin selepas log masuk

Untuk eksponen integer, anda boleh menggunakan fungsi std::pow(), yang menerima tiga parameter: asas, eksponen integer dan jenis sasaran. Contohnya:

int power(int base, int exponent) {
  int result = 1;
  for (int i = 0; i < exponent; i++) {
    result *= base;
  }
  return result;
}
Salin selepas log masuk

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

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;
  }
}
Salin selepas log masuk

Untuk eksponen integer negatif, anda boleh menggunakan formula berikut:

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;
  }
}
Salin selepas log masuk
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!

Label berkaitan:
c++
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan