Kaedah pelaksanaan fungsi eksponen dalam bahasa C memerlukan contoh kod khusus
Fungsi eksponen ialah fungsi biasa dalam matematik Ia ditakrifkan sebagai f(x) = e^x, dengan e ialah asas logaritma semula jadi. Dalam bahasa C, kita perlu melaksanakan fungsi eksponen sendiri Dua kaedah pelaksanaan akan diperkenalkan di bawah, dan contoh kod khusus akan diberikan.
Kaedah 1: Pengembangan siri Taylor
Fungsi eksponen boleh dianggarkan menggunakan pengembangan siri Taylor adalah seperti berikut:
e^x = 1 + x + x^2/2! ! + … + x^n/n! + …
Kita boleh menulis gelung berdasarkan formula pengembangan siri Taylor untuk mengira nilai anggaran fungsi eksponen. Berikut ialah contoh kod khusus:
#include <stdio.h> double power(double x, int n) // 计算 x 的 n 次方 { double result = 1.0; for (int i = 0; i < n; i++) { result *= x; } return result; } double factorial(int n) // 计算 n 的阶乘 { double result = 1.0; for (int i = 1; i <= n; i++) { result *= i; } return result; } double exponential(double x, int n) // 使用泰勒级数展开计算指数函数的近似值 { double result = 0.0; for (int i = 0; i <= n; i++) { result += power(x, i) / factorial(i); } return result; } int main() { double x = 1.0; // 指数函数的自变量 int n = 10; // 近似的级数项数 double result = exponential(x, n); printf("e^%f = %f ", x, result); return 0; }
Kaedah 2: Pengembangan siri kuasa
Cara lain untuk melaksanakan fungsi eksponen ialah menggunakan formula pengembangan siri kuasa Formula pengembangan siri kuasa adalah seperti berikut:
e^x = 1 + x/ 1! + x^2/2! + x^3/3! + … + x^n/n! formula pengembangan siri penghampiran fungsi. Berikut ialah contoh kod khusus:
#include <stdio.h> double power(double x, int n) // 计算 x 的 n 次方 { double result = 1.0; for (int i = 0; i < n; i++) { result *= x; } return result; } double factorial(int n) // 计算 n 的阶乘 { double result = 1.0; for (int i = 1; i <= n; i++) { result *= i; } return result; } double exponential(double x, int n) // 使用幂级数展开计算指数函数的近似值 { double result = 0.0; for (int i = 0; i <= n; i++) { result += power(x, i) / factorial(i); } return result; } int main() { double x = 1.0; // 指数函数的自变量 int n = 10; // 近似的级数项数 double result = exponential(x, n); printf("e^%f = %f ", x, result); return 0; }
Dalam contoh kod di atas, kami mentakrifkan dua fungsi tambahan kuasa dan faktorial, yang digunakan untuk mengira kuasa dan faktorial masing-masing. Kemudian, kami mentakrifkan fungsi eksponen, yang mengira penghampiran fungsi eksponen. Akhir sekali, dalam fungsi utama, kami menggunakan fungsi eksponen untuk mengira anggaran e^1 dan mencetak hasilnya.
Melalui dua kaedah pelaksanaan di atas, kita boleh melaksanakan fungsi eksponen sendiri dalam bahasa C. Kedua-dua kaedah menghampiri nilai fungsi eksponen melalui pengembangan siri, dan dalam bilangan lelaran tertentu, ketepatan tertentu boleh diperolehi. Kaedah dan bilangan lelaran yang sesuai boleh dipilih mengikut keperluan untuk mendapatkan anggaran fungsi eksponen yang memenuhi keperluan.
Atas ialah kandungan terperinci Bagaimana untuk melaksanakan fungsi eksponen dalam bahasa C. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!