تبلیغات
آموزش برنامه نویسی سی ++،سی شارپ،جاوا اسکریپت - محاسبه لگاریتم و تابع نمایی یا Ln
آموزش برنامه نویسی سی ++،سی شارپ،جاوا اسکریپت

مرتبه
تاریخ : چهارشنبه 24 آبان 1391
برنامه : محاسبه ی log و Ln اعداد.  

الگوریتم:

برای محاسبه لگاریتم و تابع نمایی از تعریف ریاضی زیر استفاده می کنیم


و درنهایت


برای محاسبه ی این دنباله به تابع محاسبه توان که قبلا نوشتیم نیاز داریم.

.با نوشتن کد زیر در تابع Ln کار محاسبه ی دنباله رو انجام میدیم


2*( (1 / temp )* (power(t,2*n+1)) )    که  temp =(2*n+1) ,t =(z-1)/(z+1)

دستور بالا تک جمله های دنباله ی بالا را به ترتیب از n=0 تا .... محاسبه و آنها را در متغیر result جمع می کند.

به این ترتیب Ln عدد محاسبه می شود و در نهایت در تابع Log با استفاده از فرمول ، لگاریتم را محاسبه می کنیم.


* حاصل جملات دنباله ی فوق به ازی n های بزرگتر ، کوچکتر می شود لذا با توجه به  شرط حلقه ی While ،زمانی از حلقه ی While خارج می شیم که اختلاف جمله ی فعلی از جمله ی قبلی به حداقل که رسیده باشه.در اینجه یک ضربدر ده به توان منفی 11.(هرچه این مقدار کوچکتر باشد حاصل دقیق تر هست.)


برنامه ی محاسبه لگاریتم و تابع نمایی به زبان ++c

double power(double x, int p);//x^p

double ln(double z)
{
   double t =(z-1)/(z+1);
   double result=0,oldResult=1;
   int n=0;
   double temp=0;
   while((oldResult < result?result - oldResult:oldResult -   result) > 0.00000000001)
   {
           oldResult = result;

           temp =(2*n+1);
           result =result + 2*( (1 / temp )* (power(t,2*n+1)) );

           n=n+1;
   }
return result;

}



double log(double x,double a)
{
       return ln(x)/ln(a);
}

  برنامه ی محاسبه لگاریتم و تابع نمایی به زبان #c
double power(double x, int p);//x^p

double ln(double z)
{
   double t = (z - 1) / (z + 1);
   double result = 0, oldResult = 1;
   int n = 0;
   double temp = 0;

   while ((oldResult < result ? result - oldResult : oldResult - result) > 0.000000000000001)
   {
             oldResult = result;
             temp = (2 * n + 1);

             result = result + 2 * ((1 / temp) * (power(t, 2 * n + 1)));

             n = n + 1;
   }
return result;

}


double log(double x, double a)
{
     return ln(x) / ln(a);
}



 


می تونید با ارسال شارژ از من حمایت کنید 09392888216
برچسب ها: سورس کد محاسبه لگاریتم و تابع نمایی به زبان سی پلاس پلاس، سورس کد محاسبه لگاریتم و تابع نمایی به زبان سی++، سورس کد محاسبه لگاریتم و تابع نمایی به زبان سی شارپ، سورس کد محاسبه logarithm and Lnبه زبان c#، سورس کد محاسبه logarithm and Lnبه زبان c++،
آرشیو مطالب
صفحات جانبی
پیوند های روزانه
امکانات جانبی
blogskin

قالب وبلاگ