Neler yeni

Sqrt kullanmadan karekök bulma | Babil Metodu | C++

Scoulfly

Uzman Üye
Katılım
20 Aralık 2020
Mesajlar
193
Tepkime puanı
579
İlgi Alanlarınız
Grafik Tasarım
Cinsiyet
  1. Erkek
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Babil Metodu ile Karekök Hesaplama

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Sizlerle Sqrt() Fonksiyonu kullanmadan karekök almanın formülünü öğreneceğiz ve bunu C++ üzerinde kullanacağız.


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~



Başlayalım


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Babil metodu bulduğunuz sonuçları tekrar tekrar kullanarak gitgide sonuca yaklaştığınız metotdur.

Hemen örneklendirelim.
İlk önce karekökünü almak istediğimiz sayıya (x=25) 1 ekleyip sonra 2'ye bölelim.
Kod:​
(x+1)/2-------------(25+1)/2=13
Bulduğumuz sonuca n diyorum.
x'i (25) bulduğumuz sonuca (n=13)bölüp tekrardan bulduğumuz sonuca (n=13)'ü ekliyoruz.
Kod:​
n=((x/n)+n)/2-------------((25/13)+13)/2=7,461
Buradan bulunan sonuçla tekrardan aynı işlem yapılır.
Kod:​
n=((x/n)+n)/2-------------((25/7,461)+7,461)/2=5,405
Tekrar aynı işlem yapılır.​
Kod:​
n=((x/n)+n)/2-------------((25/5,405)+5,405)/2=5,015​
Tekrar aynı işlem yapılır.​
Kod:​
n=((x/n)+n)/2-------------((25/5,015)+5,015)/2=5,00002​
.
.
.
.
.
.


Sonuç = 5

Gördüğünüz gibi bulduğumuz sonuçları tekrar tekrar kullanarak sonuca ulaştık.

Önce daha düzgün anlamak için algoritma üzerinden gösterip daha sonra c++ kodlarını paylaşayım.



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Şimdi sıra kodlarda:

Kod:​
Kod:
#include <iostream>

using namespace std;


**** karekokal(double x) //fonksiyon başlığı
{
double a,n;
n=(x+1)/2; // ilk işlemimiz bu.
for (a=1; a<=10000; a++) //sayaç 10000 kere döndürdüm çünkü ne zaman bulacağı belli değil.
{
n=((x/n)+n)/2; //ikinci işlem bir süre sonra hep aynı sonucu veriyor.
}

cout << endl << "Sonuc= " << n;
}

main()
{
double x,kok;
cout << "Karekokunu almak istediginiz sayi= "; cin >> x;
karekokal(x);

}
 

Can

La Turquie Kémaliste
Admin
Katılım
19 Aralık 2020
Mesajlar
2,042
Tepkime puanı
6,793
Konum
Türkiye
İlgi Alanlarınız
ham radio
Cinsiyet
  1. Erkek
eline sağlık
 

Konuyu görüntüleyen kullanıcılar:

Hukuksal Sorunlar İçin[email protected]
For Legal Problems[email protected]
Hacktivizm.Org
Hacktivizm.Org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Hacktivizm.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Hacktivizm saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Hacktivizm üyelerinin yaptığı bireysel hack faaliyetlerinden Hacktivizm sorumlu değildir. Sitelerinize Hacktivizm ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz. Sitemizde yer alan içerikler hakkındaki şikayetlerinizi Buradan iletişime geçerek bildirebilirsiniz. Please Report Abuse, DMCA, Scamming, Harassment, Crack or any Illegal Activities to [email protected]
Hacktivizm Twitter Hacktivizm Youtube Hacktivizm İnstagram Hacktivizm Telegram