# Native Code > برنامه نویسی در Delphi > مباحث عمومی دلفی و پاسکال >  محاسبه جذر اعداد (الگوریتم)

## اصغر (پآچ)

سلام 
برای بدست آوردن جذر اعداد یه فرمول دارم اما نمی تونم توی دلفی تعریفش کنم کسی میتونه بگه چطوری می تونم این فرمول رو پیاده سازی کنم؟

X = عددی که می خوایم جذرش رو حساب کنیم
r = 1
for i = 1 to 100
r = (r + (x/r))/2

البته می دونم که تابع SQR توی دلفی جذر اعداد رو بر می گردونه اما می خوام این فرمول رو استفاده کنم. :لبخند گشاده!: 
موفق و موید باشید

----------


## دلفــي

> سلام 
> برای بدست آوردن جذر اعداد یه فرمول دارم اما نمی تونم توی دلفی تعریفش کنم کسی میتونه بگه چطوری می تونم این فرمول رو پیاده سازی کنم؟
> 
> X = عددی که می خوایم جذرش رو حساب کنیم
> r = 1
> for i = 1 to 100
> r = r + (x/r)
> 
> البته می دونم که تابع SQR توی دلفی جذر اعداد رو بر می گردونه اما می خوام این فرمول رو استفاده کنم.
> موفق و موید باشید


فرمول نوشته شده برای بدست آوردن جذر اعداد صحیح نیست ، در ضمن تابع SQR توان دوم یک عدد را برمی گرداند نه جذر آن عدد !
تابع جذر در دلفی SQRT می باشد .

----------


## اصغر (پآچ)

سلام
حالا اين فرمول جديد رو چطور پياده كنم؟
موفق و مويد باشيد

----------


## Mahmood_M

> سلام
> حالا این فرمول جدید رو چطور پیاده کنم؟
> موفق و موید باشید


کافیه یه تابع براش بنویسید ، مثلا :
function MySQRT( X : Integer ) : Double;
var
 R : Double;
 I : Integer;
begin
 r := 1;
 for i := 1 to 100 do
  r := (r + (x/r))/2;
 Result := R;
end;
تابع بالا عدد X رو به عنوان ورودی می گیره ، جذرش رو حساب می کنه و به عنوان یک عدد اعشاری درون R میریزه ، در آخر هم R به عنوان خروجی تابع به Result نسبت می دیم ...

موفق باشی ...

----------


## naghme1370

سلام این برنامتونو نوشتم و جواب هم میده اما میخواستم بدونم اگر شرط حلقه 100=>i هستش پس چجوری جذر اعداد رو حساب میکنه؟ مثلا جذر 16 فقط کافیه i کوچکتر مساوی 7 باشه! یعنی 7 بار حلقه تکرار بشه... در اینجا حلقه از کجا میفهمه کی باید استاپ بشه؟ 
و سوال دیگه اینکه آیا این فرمول پیدا کردن ریشه در ریاضی هم گفته شده و کاربرد داره ؟ یا فقط مختص برنامه نویسیه؟

----------


## یوسف زالی

سلام
می تونید 100 رو خودتون بر حسب عدد ورودی محاسبه کنید، مثلا N/2 بار
و این که هر فرمولی که در برنامه نویسی کار می کنه در ریاضی هم صادقه، نمی شه که برنامه نویسی ریاضیات خودش رو داشته باشه
قسمت هایی از برنامه نویسی هم که خروجیش عجیب غریب می شه، OverFlow و TypeCast و این چیزاست، وگرنه ریاضی در همه زبانها ریاضیه

----------

