بسم الله الرحمن الرحيم
ان في معضم لغات البرمجة دالة اللوغاريتم لايمكن تحديد قاعدة لها
ولكن الآن يسرني ان اقدم خواريزم بإمكانك صناعة دالة
انت تحدد قاعدتها بواسطة وسيط
عن طريق اللوغاريتم العشري
القاعدة = النتيجة التي بني عليها
فمثلا اللوغاريتم العشري قاعدته 10
ولو اجريت العملية على رقم 100 فإنه يرجع 2 لأ ن 10^2 = 100
على العموم
نفترض لو لديك لوغاريتم قاعدته 4
ولوغاريتم قاعدته 2
وكان لكلت القاعدتين اجرين العملية على الرقم 16
فإن الناتج الأول
سوف يكون 2
والثاني سوف يكون 4
لاحظ لأن الأساس 4 = 2^2
اذا القاعدة 4 سوف يكون ناتجها نصف ما ينتج عن القاعدة 2
وفي الحقيقة على هذا المبدأ اعتمدنا للنتج الخوارزمية التالية
#include <iostream.h>
#include<cmath>
double logx(double,double);
int main()
{
cout<<logx(2,16)<<endl<<logx(4,80)<<endl;
return 0;
}
double logx(double base,double main){
double exp=log10(main);
double x=log10(base);
x=pow(x,-1);
return x*exp;
}وشكرا لكم :angry:
