Soru sorBir sayının karekökünü alan algoritma
vilehandrad tarafından 5 yıl önce soruldu

Merhaba, ekteki soruda nereden başlayacağımı bilemedim. Soruyu anlayamadım daha doğrusu. https://resmim.net/f/0a0wSz.jpg
Soruyu anlayamadığım için yazdığım kodu da yazamadım. Şöyle bir şey denedim.
 
x=[1:1000];
e=2;
A=16;
n=1;
x(n)=;
while abs(x(n+1)-x(n))<= e
 y(n)=(1/A)*x(n)^2;
 x(n+1)=[x(n)/8]*(15-y(n)*(10-3*y(n)));
 n=n+1;
end

1 Cevap
hakkans Yönetici tarafından 5 yıl önce cevaplandı

Merhaba,
Buradaki algoritmayı denediğimde maalesef çözüm ıraksıyor. Ancak http://www.mathpath.org/Algor/squareroot/algor.square.root.halley.htm linkindeki formülü kullanıp aşağıdaki kodla çalıştırınca karekökü hesaplayabildim. Sizin kodunuzda kısmen değişiklik yaptım. x(n) e bir değer verdim, while şartını err isimli hata değişkeninin e'den büyük/eşit olmasına bağladım.

clearvars;
e=1e-3;
A=16;
n=1;
x(n)=7;
err=1;
while err >= e
y(n)=(1/A)*x(n)^2;
x(n+1)=x(n)*(x(n)^2+3*A)/(3*x(n)^2+A)
err=abs(x(n+1)-x(n));
n=n+1;
end