[Çözüldü] Kesir de verinin sıfır çıkması

Başlatan ahmet_matematikci, 15 Mayıs 2016 - 10:47:53

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

ahmet_matematikci

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?
♥ Kız tavlamak için kahraman olmak gerekmez. Doğru kadın zaten sizi kahraman yapar ;)

Amenofis

2 -> int
3 -> int 
int / int yine int eder yani 0.

Sabitleri double tipinde yazarsan sorun çözülür (2.0 / 3.0)

erdemakin09

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.
Her Can Bir Gün Ölümü Tadacaktır!

ahmet_matematikci

♥ Kız tavlamak için kahraman olmak gerekmez. Doğru kadın zaten sizi kahraman yapar ;)