: Etiket derken? goto mu kullancaksın bu algoritmada? evet operada yazdığım için paragraflar çıkmamıştı tagladım yani sayıyı elde edeğiz birer artırarak tam kare kontrolü yapacağız bu bittikten sonra sayımızı birer eksilteceğiz tam kare kontrolü yapacağız Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... .. Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."

ondalik=fabs 100+0,5); 0.5 olucak :) Saçma

ncelikle bir sayını ondalık kısmı sayi-abs olmalıdır Tam olarak hangi hatayı veriyor? Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... .. Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."

abs çalışmadı nedense o yüzden double type cast ile biraz karışık grünüyor ama sanırım istediğin işi yapıyor. #include <iostream> #include <math. h> using namespace std; int ondalikBul int enYakinTamKareyiBul { int dizi = ; int i, enKucukFark=100, enKucukFarkIndeks=0; for (i=0; i<11; i++) { if (fabs < enKucukFark) } return dizi ; } int main Sen hiç kaval çaldın mı?

: Ayrıca merak ettiğim bi durum var, math. h kullanmanıza izin veriyolarsa, ceil ve floor diye 2 fonksiyon var, birisi yukarı, diğeri aşağı yuvarlar sayınızı onları kullansanıza.. http://www.tahribat.com/Forum-C-Dan-Anlayan-Muritler-127311/2/#1455452 Şurda devin ne olduğunu daha iyi anlatmış arkdaşlar, yuvarlama fonksiyonlarına ihtiyaç olmayacak yani. Birkaç post ncesine bakma hacı, güncel olan o post :) Sen hiç kaval çaldın mı?

JPriest teşekkür ederiz püldün :) (:

fabs iki byutlu değişken mi yoksa bir fonksiyon mu o tanımlı değil, fabs hiç tanımlanmamış Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... .. Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."

#include <stdio. h> #include <conio. h> #include <math. h> main { float sayi; int a, ondalik, kok, cikar, cikar2, y, z, yakin; int tam; char secim; do { printf ; scanf ; tam=fabs ; ondalik=fabs 100+0,5); a=ondalik 100; kok=sqrt ; if if (cikar<cikar2) if (cikar2<cikar) printf ; printf("\nDevam etmek istiyormusunuz? "); secim=getch ; }while ; } tam=fabs ; da bir hata veriyo |:

: arkadaşlar mesela sayı 75,65 bu sayıyı en yakın tam sayıya çevircek 76 olcak sayı 76 'ya en yakın tam kare sayı 8x8=64 9x9=81 81 'e daha yakın olduğu için onu seççek ve aradaki farkı bulcak 81-76 = 5 adam negatif bi değer girse bile iplemicek onu pozitif gibi grüp devam etcek şu an geldiğimiz seviye fabs lara kadar. yani bu seviyeye gre bunun c++ kodu nedir? :/ kerim'in arkadaşı da bunu yazdı: Ondalıklı kısmı 2 haneli olan Pozitif bir rasyonel sayının ondalıklı kısmının tam sayı değerinin en yakın tam kare sayıya olan uzaklığı bulan C programı Biri tam kısmından bahsediyor diğeri ondalıklı kısmından. Edit: bir üstteki mesajda da kerim'in arkadaşı tam kısımdan bahsediyor. Hangisine gre yapılacak? Sen hiç kaval çaldın mı?

NMC kardeş hakikaten fabs fonksiyonunda neden hata daha doğrusu beklenmeyen bir sonuç alıyorum... nere hata yapıyorumdur.. yani double girdiyi niçin bana float olarak veriyor kullanıyorum bu arada.. yani 41.56458746521 versem 41.5645 gibi bir sonuç veriyor... Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... .. Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."

Dngü kullamadan nasıl yapmayı düşünüyorsunuz? :))) Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... .. Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."

hocam çok sağol :) ellerine sağlık

Yok onu demiyorum, goto yerine dngü kullanılsın diyorum. Ne kadar goto, o kadar ktü kod. Sen hiç kaval çaldın mı?

yok hocam gene aynı satırda hata verdi

Ondalıklı kısmı 2 haneli olan Pozitif bir rasyonel sayının ondalıklı kısmının tam sayı değerinin en yakın tam kare sayıya olan uzaklığı bulan C programı

ilgili satırda bir type missmatch var olabilir ondalık işareti "." yerine virgül ile girilmiş olmasından olamsın... Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... .. Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."

Arkadaşlar daha detaylı anlatılmak gerekirse; Sayı=3,12 olsun sayının tam kısmı olan 3 yukarı yuvarlanıp 4 ve sayı aşağı yuvarlanıp 3 bulunacak 3=32=9 =|9-12|=3 4=42=16=|16-12|=4 9 daha yakın diyecek

Etiket derken? goto mu kullancaksın bu algoritmada? Sen hiç kaval çaldın mı?

ben virgül grdüğüm için iki boyutlu dizi sandım... Pardon zaten seretide sylemiş... Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... .. Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."

ondalik=fabs 100+0,5); ondalik int olduğu için hata veriyo. ondalik i float tanımlaman yada ondalik= fabs 100+0,5); gibi sonucu int e dnüştürmen lazım Saçma

: fabs iki byutlu değişken mi yoksa bir fonksiyon mu o tanımlı değil, fabs hiç tanımlanmamış Fabs fonksiyonu için math. h library cagirilmis zaten alakasi yok. dedigim gibi fabs yerine abs yazip denerse olay cozulcek. since 2005 // tbt

Ayrıca hata değil warning veriyodur.. Cast yapmadığın için :) Derlenmesi lazım o şekilde.. There are 10 types of people in the world. Those who knows binary and those who dont...

: Itcelik hocam mesajlarında grdüğüm kadarı ile c ve c++'a fazla hakim değilsin, elemanların kafasını bulandırmamakta fayda var ;) Sanırım asm bilgin falan var biraz, nerilerin o mantıkla gidiyor çünkü :) ncelikle while, for gibi dngüler varken goto gibi ilkel bişi kullanmak programlama felsefesine ters.. Bizim blümde ben byle birşey yapsam hoca kafamı gzümü kırar :D math. h include edildi ise fabs ve abs saçma sapan sonuç vermez, edilmedi ise zaten çalışmaz. int de bir veri tipi fonksiyon değil. double fabs ;float fabs ;long double fabs ;http://www.cplusplus.com/reference/clibrary/cmath/fabs/3 farklı fabs var, her birisi tipine uygun sonuç dndürür.. Ayrıca merak ettiğim bi durum var, math. h kullanmanıza izin veriyolarsa, ceil ve floor diye 2 fonksiyon var, birisi yukarı, diğeri aşağı yuvarlar sayınızı onları kullansanıza.. NMC kardeş benim gotolarım dngü gotosu değil dallanma için... program büyük tamkare sayıyı buldu ne yapacak? bekleyecek mi... ayrıca benim yazdığım bir algoritma.. KOD değil... Arakdaşlar daha algoritma ve problm analizi bilmiyorlarki... bu programı kullanıcı tanımlı fonksiyon yaparsın iki satır da kod yazarsın o da olurdu.. :)) Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... .. Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."

arkadaşlar mesela sayı 75,65 bu sayıyı en yakın tam sayıya çevircek 76 olcak sayı 76 'ya en yakın tam kare sayı 8x8=64 9x9=81 81 'e daha yakın olduğu için onu seççek ve aradaki farkı bulcak 81-76 = 5 adam negatif bi değer girse bile iplemicek onu pozitif gibi grüp devam etcek şu an geldiğimiz seviye fabs lara kadar. yani bu seviyeye gre bunun c++ kodu nedir? :/ (:

Hay allah ya kafamı karıştırdı çocuklar... ABS zaten mutlak değer ben tamdeğer bekliyorumm : )))) Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... .. Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."

nemli değil. Ama anlamadığınız bir yer varsa vermeyin devi, yoksa devin pek anlamı kalmaz. Sen hiç kaval çaldın mı?

: Yok onu demiyorum, goto yerine dngü kullanılsın diyorum. Ne kadar goto, o kadar ktü kod. haa onu mu diyorsun ordaki etiketlere bir defa gidilecek zaten... Altprogram gibi düşün şimdi alt program desem kullanıcı tanımlı fonksiyon desem bünye kaldırmaz.. İLERİ ARAMA alt programı GERİ ARAMA alt programı ya da blgesi gibi... program drt bülgeden oluşuyor 1. ilk iki sayıyı bulma, sayimiz 2. ileri arama blümü 3. geri arama blümü 4. değerlendirme ve sonuç blümü şimdi ileri arama blümündeki sıkıntı şu, artan sayılar sonsuza kadar artar biliyorsun bylelikle program uzun ve sıkıntılı bir sürece girebilir ki bu yüzden ileri aramada bir "maksimum arama mesafesi" ile kesilip programın dallanması program tekniği için daha uygundur... sayının durumuna gre bu geri aram için de yapılabilir ama o eninde sonunda sıfır olacaktır ve orda dngü zaten hatasz biter. Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... .. Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."

hüsonun dedikleri doğru g ümden algıladım devi :| ondalıklı kısmı alcak sayı = 3,12 ondalığı = 0,12 virgülden kurtar = 0,12x100 =12 12 > 9 (3ün karesi) 'amı yakın 16 (4ün karesi) 'yamı yakın onu bulcak 9 a daha yakın 9-12 = -3 ama bu pozitif şekilde yazcak. uğraşan arkadaşlara teşekkürler. :$ (:

Araştırdığım kadarıyla Bazı derleyiclerde mat fonksiyonları için farklı duyarlık seviyesi isteyebiliyormuş.. o çeşit bir problem olabilir yani... yani fabs double falan olabilir... fakat devc++ da bu ayarlamalar otomatik olduğundan problem olmaz da deniyor... Bir de DEVC++ ile deneyin... ama diğer yandan zaten pozitif bir sayı için abs=int dir.. Yani girdi değişken zaten int olarak tanımlanırsa girdi değişken zaten mutlak değere de eşit olur.. Bir de denemek için sadece bir sayının mutlak değerini alan bir program yazın ki sorun fabs'den mi yoksa başka bir yerden mi geliyor.. Derleyici mutlaka bir hata kodu veriyordur.. Aceba hata kodunu derleyici mi veriyor yoksa program çalışma sırasınsda mı veriyor? Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... .. Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."

fabs fonksiyonunu sadece değişkeni double tanımlayarak kullanabilirsin. Ya fabs fonksiyonu yerine abs yaz ya da double yap tipini. since 2005 // tbt

Abi ben şu bir nceki sayfada yazdığım koda bile dandik derken sen goto'dan bahsediyorsun, biraz eskide kaldı sanki o işler. Dngüler çıktı mertlik bozuldu :) Sen hiç kaval çaldın mı?

: NMC kardeş hakikaten fabs fonksiyonunda neden hata daha doğrusu beklenmeyen bir sonuç alıyorum... nere hata yapıyorumdur.. yani double girdiyi niçin bana float olarak veriyor kullanıyorum bu arada.. yani 41.56458746521 versem 41.5645 gibi bir sonuç veriyor... dallanmalar'ı c++ da fonksiyon tanımlayarak hallederler sanıyorum :) Büyük ihtimal print ederken kullandığın fonksiyon ile alakalı problemin :) printf("%.20f\n", sayi); şeklinde yap veya cout kullanıyosan cout << setprecision(20) << sayi << endl; şeklinde yap bakalım o zaman sonuç nasıl dnecek.. There are 10 types of people in the world. Those who knows binary and those who dont...

Itcelik hocam mesajlarında grdüğüm kadarı ile c ve c++'a fazla hakim değilsin, elemanların kafasını bulandırmamakta fayda var ;) Sanırım asm bilgin falan var biraz, nerilerin o mantıkla gidiyor çünkü :) ncelikle while, for gibi dngüler varken goto gibi ilkel bişi kullanmak programlama felsefesine ters.. Bizim blümde ben byle birşey yapsam hoca kafamı gzümü kırar :D math. h include edildi ise fabs ve abs saçma sapan sonuç vermez, edilmedi ise zaten çalışmaz. int de bir veri tipi fonksiyon değil. double fabs ;float fabs ;long double fabs ;http://www.cplusplus.com/reference/clibrary/cmath/fabs/3 farklı fabs var, her birisi tipine uygun sonuç dndürür.. Ayrıca merak ettiğim bi durum var, math. h kullanmanıza izin veriyolarsa, ceil ve floor diye 2 fonksiyon var, birisi yukarı, diğeri aşağı yuvarlar sayınızı onları kullansanıza.. There are 10 types of people in the world. Those who knows binary and those who dont...

Bir de bu fabs fonksiyonu çok zırva sonuçlar verdi double girdiyi float a indiriyor virgülden sonra 4 basmak sonuç veriyor yani.. Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... .. Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."

abs ve fabs kendi başlarına saçm asapan sonuçlar veriyorlar arkadaşlar zaten double istiyor siz int fonksiyonunu kullanın o düzgün sonuçlar veriyor algoritma şyle olur sayıyı gir tam kısmı bul // tamsayi=int ondalık kısmı bul// ondalik=sayi-tamsayi ondalık kısmın ilk iki hanesini tam sayıya çevir// sayimiz=int(100 ondalik) bylelikle sayimizi elde etmiş olduk en yakın kare sayıları arayacağımıza gre ncelikle kendinin kare olup olmadığını kontrol edeceğiz bunu da virgülden sonraki kısmı 0 la karşılaştırarak yaparız sayimiz in karekkünün tam değeri karekküne eşit mi evetse "sayı zaten tam kare" hayırsa ileriarama etiketine dallan İLERİ ARAMA // bu blümde sayimiz birerbirer artırılarak sayının tam kare olup olmadığı yine karekk, int karekk karşılaştırması ile saptanacak burada sayimiz değişkenini ilk haliyle geri aramada da kullanacağımızdan başka bir değişkene yükleyeceğiz ileri=sayimiz ileri yi bir artır// ileri tamsayıkare mi evet ise buyukkare=ileri, geri arama etiketine dallan değilse dngüye devam et GERİ ARAMA // ... geri=sayimiz sayimizi bir eksilt geri tamsayı kare mi evet ise kucukkare=sayimiz, sonuçlar etiketine dallan değilse dngüye devam et SONUÇLAR buyukkareyi yaz kucukkareyi yaz uzaklıkb= buyukkare-sayimiz uzaklıkk= sayimiz - kucukkare uzaklıkb?=uzaklıkk Evet ise "ikisi de aynı uzaklıkta " uzaklıkb? değilse "kucukkre daha yakın" end Din Kitaplarını Okuyup Anlayana Ateist, Okuyup Anlamayanlara "dindar" denir... Nikola TESLA.. ben mi? Ne okurum ne anlarım... Kendi kendime de uyuz oluyorum ama olamıyorum.. "Ama efsaneyi çıkarıp atarsan ve yaptıkları eylemlere bakarsan... .. Jedi'ların mirası başarısızlıktır. İkiyüzlülüktür, kibirdir."