ساده ترین الگوریتم برای محاسبه ی جذر یک عدد در فورجه ی n چیه ؟
من به کمک دیفرانسیل تونستم این الگوریتمو پیاده کنم
اگه کسی روشی بلده لطفا" توضیح بده.
یه روش من یه بار یه جایی دیدم که خیلی ساده و کارا بود اما الآن یادم نیست.
ساده ترین الگوریتم برای محاسبه ی جذر یک عدد در فورجه ی n چیه ؟
من به کمک دیفرانسیل تونستم این الگوریتمو پیاده کنم
اگه کسی روشی بلده لطفا" توضیح بده.
یه روش من یه بار یه جایی دیدم که خیلی ساده و کارا بود اما الآن یادم نیست.
function SquareRoot( const X : real; const Tolerance : real):real;
var
X_next,X_current: real;
begin
X_current := X;
while ((ABS(X_next - X_current) < Tolerance)) do begin
X_next := 0.5*(X_current + X/X_current);
X_current := X_next;
end;
result := X_current;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Caption := FloatToStr( SquareRoot(9 , 0.001 ) );
end;
دنبال یک برنامه در سی که جذر یک عدد بدون استفاده ار تابع بدست اورد
البته این الگوریتم که به روش نیوتونی معروفه برای فرجه ی 2 جواب میده و هرچه قدر N رو بزرگتر در نظر بگیریم عدد دقیقتری به دست میاریم .
cin>>x;
a=x;
for (i=1;i<n;i++)
x=(x+a/x)/2;
cout<<x;