Ubuntu Türkiye

Yazılım => Programlama => Java => Konuyu başlatan: ahmet_matematikci - 15 Mayıs 2016 - 10:47:53

Başlık: [Çözüldü] Kesir de verinin sıfır çıkması
Gönderen: ahmet_matematikci - 15 Mayıs 2016 - 10:47:53
Java da kesirli ifadeleri de ayrı bir gösterim mi var?

Misal


class Kesir {

public static void main(String[] args) {
       double  d;
    d = (2/3);
  System.out.println("d = " + d);

}


Sonuç sıfır çıkıyor.
Sonucun 0,6666 çıkması gerekmiyor mu?
d değişkeni double olduğu halde Neden tamsayıya dönüştürüyor?
Başlık: Ynt: Kesir de verinin sıfır çıkması
Gönderen: Amenofis - 15 Mayıs 2016 - 12:11:04
2 -> int
3 -> int 
int / int yine int eder yani 0.

Sabitleri double tipinde yazarsan sorun çözülür (2.0 / 3.0)
Başlık: Ynt: Kesir de verinin sıfır çıkması
Gönderen: erdemakin09 - 15 Mayıs 2016 - 12:46:01
Alıntı yapılan: ahmet_matematikci - 15 Mayıs 2016 - 10:47:53
Java da kesirli ifadeleri de ayrı bir gösterim mi var?

Misal


class Kesir {

public static void main(String[] args) {
       double  d;
    d = (2/3);
  System.out.println("d = " + d);

}


Sonuç sıfır çıkıyor.
Sonucun 0,6666 çıkması gerekmiyor mu?
d değişkeni double olduğu halde Neden tamsayıya dönüştürüyor?

Amenofis cevaplamış zaten. Bende ufak bir öneride bulunayım. Bölme işlemi için konuşuyorum. Bölme işleminde eğer kesirli sonuçlar elde etmek istiyorsan. İnt değişkenleri hep double yada floata çevir. Eğer gelen değerin int mi float mı olduğunu bilmiyorsan da en sağlıklısı ((double)sayi1/(double)sayi2) gibi kullanmaktır.
Başlık: Ynt: Kesir de verinin sıfır çıkması
Gönderen: ahmet_matematikci - 15 Mayıs 2016 - 13:38:46
Tesekkur ederim. Kolay gelsin.