King عزیز توی این الگوریتمی که نوشتین عدد آر چیه؟ چون با تغییر اون جواب جذر فرق نمیکنه! فقط نباید صفر باشه.
اینو از این جهت میپرسم که میخوام به چند نفر از اساتید نشونش بدم تا صحت کارش رو بررسی کنند و باید بدونم که این r چیه؟ چون اگر ثابت باشه که با تغییرش باید جذر خراب بشه در حالیکه تغییری نمیکنه.ممنون میشم اگر جواب دقیقش رو برامون گیر بیارید یا اسم الگوریتمش رو.
r همون عددی است که قراره مرحله به مرحله به جذر x نزدیک بشه تا در انتها به خود جذر x برسه.
مثل حدس زدن جذر عمل می کنه، یک عدد رو برای جذر x فرض می کنه، اگر از جذر x بزرگتر باشه، در مرحله بعدی
کوچکتر میشه و اگر از جذر x کوچکتر باشه، در مرحله بعدی بزرگتر میشه، هر چه که به جذر x نزدیکتر میشه، مقدار تغییرات
هم کمتر میشه.
اینکه مقدار اولیه r چقدر باشد اهمیت چندانی ندارد، فرضا اگر ما بخواهیم جذر عدد 10000 را حساب کنیم و مقدار اولیه r
را 1 بگیریم، در همان مرحله اول r از 1 به مقدار 5000 صعود می کند و در مرحله 10 ام به مقدار 100 می رسیم.
در مورد صحت اش که مطمئن باشید. روش کار ساده است، فرض کنیم x یک عدد مثبت و m جذر x باشه، پس x/m بایستی
برابر m باشه. x/m و m دو مقداری هستند که بایستی با هم برابر باشند تا مقدار دقیق جذر x بدست آید.
در مورد متغیر r ما یک مقدار اولیه لازم داریم (هر مقدار اولیه مثبتی) و فرض می کنیم که این عدد به جذر x
نزدیک است. به هر حال یا از جذر x بزرگتر است و یا کوچکتر. اگر r از جذر x بزرگتر باشد، x/r از جذر x کوچکتر می شود و
برعکس اگر r از جذر x کوچکتر باشد، x/r از جذر x بزرگتر می شود.
در هر مرحله ما از جمع این دو مقدار r و x/r میانگین می گیریم، (یکی از ایندو از جذر x بزرگتر و یکی از جذر x کوچکتر است)
در نتیجه در هر مرحله ما به جذر x نزدیکتر می شویم. هر چه فاصله r از جذر x کمتر می شود، دقت اعشاری نیز بالاتر می رود.
اینکار اصولا بایستی آنقدر ادامه پیدا کند که دقت اعشاری به حد مطلوب برسد.
الگوریتمی که نوشتم یکی از چندین فرمول ریاضی برای محاسبه جذر است، در منابعی مانند ویکیپدیا هم به این فرمول
اشاره شده :
کد:
1) Start with an arbitrary positive start value r
(the closer to the square root of x, the better).
2) Replace r by the average between r and x/r, that is:
(It is sufficient to take an approximate value of
the average in order to ensure convergence.)
3) Repeat step 2 until r and x/r are as close as desired.
Square root - Wikipedia, the free encyclopedia