C++ dagi kodi:
#include
using namespace std;
/* e^x=1+x+x^2/2!+x^3/3!+?+x^n/n!+ xeR
ya'ni exp(x) funksiyaning ishini siklik dastur orqali
hisoblaymiz:
bunda x=daraja ko'rsatkichi;
s- e nigng kerakli darajalarini ifodalovchi summaning
bowlang'ich qiymati
epsilon - aniqlik darajasi
u[20] esa qatorlarni hisoblash uchun massiv
*/
int k;
double s, x, epsilon, u[20];
int main(){
cout <<"x darajani kiriting: x = ";
cin >> x;
cout <<"epsilon = ";
cin >> epsilon; s = 0; u[1] = 1; k = 1;
//asosiy hisoblash
while(fabs(u[k+1]-u[k]) > epsilon){
u[k+1] = x * u[k]/k;
s += u[k];
k++; }
// javobni choplash, bunda s yig'indi qiymati
// e darajalarini ifodalaydi
cout <<"hisolashlar, sikllar soni k= " <
}
Dastur natijasi:
Avvalo e ning 1- darajasi qiymatini hisoblab ko’ramiz, chunki bu qiymat bizga nisbatan tanish hisoblanadi. Va biz bira to’la exp() funksiyasi orqali hisoblangan kerakli daraja bilan biz hisoblagan qatorlar yig’indisini tqqoslab ketiwimiz mumkin.
x=2 ya’ni e ning kvadratini ham kiritib kuramiz:
Do'stlaringiz bilan baham: |