PDA

View Full Version : روش های محاسبه ی جذر



kiani_behzad
یک شنبه 14 آبان 1385, 19:48 عصر
ساده ترین الگوریتم برای محاسبه ی جذر یک عدد در فورجه ی n چیه ؟
من به کمک دیفرانسیل تونستم این الگوریتمو پیاده کنم
اگه کسی روشی بلده لطفا" توضیح بده.
یه روش من یه بار یه جایی دیدم که خیلی ساده و کارا بود اما الآن یادم نیست.

اَرژنگ
دوشنبه 15 آبان 1385, 00:44 صبح
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;

محرم اروجلو
جمعه 23 مهر 1389, 12:41 عصر
دنبال یک برنامه در سی که جذر یک عدد بدون استفاده ار تابع بدست اورد

Arcsinos
جمعه 23 مهر 1389, 13:41 عصر
البته این الگوریتم که به روش نیوتونی معروفه برای فرجه ی 2 جواب میده و هرچه قدر N رو بزرگتر در نظر بگیریم عدد دقیقتری به دست میاریم .

cin>>x;
a=x;
for (i=1;i<n;i++)
x=(x+a/x)/2;
cout<<x;