SORU
24 EKİM 2010, Pazar


Java: ortak bölenlerin en büyüğü olsun

Böyle bir fonksiyon BigInteger, 10 *yani* olduğunu gördüm. Ayrıca diğer türleri (int, long Integer) çalışan Java diğer işlevleri vardır? Bu java.lang.Math.gcd olarak mantıklı görünüyor (aşırı her türlü ile) ama yok. Başka bir yerde mi?


(Bu soru ile karıştırmayın "nasıl kendim uygularım", lütfen!)

CEVAP
24 EKİM 2010, Pazar


Bildiğim kadarıyla, yerleşik ilkel yöntem değil. Ama bu hile yapmak gerekir kadar basit:

public int GCD(int a, int b) {
   if (b==0) return a;
   return GCD(b,a%b);
}

Ayrıca eğer bu tür bir şey içine iseniz bir çizgi vardır:

public int GCD(int a, int b) { return b==0 ? a : GCD(b, a%b); }

Kesinlikle var olduğu unutulmamalıdırhayıronlar aynı bayt kodu derleme olarak ikisi arasında fark var.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Doc Adams

    Doc Adams

    20 HAZİRAN 2007
  • TurkishRoyal

    TurkishRoyal

    16 Ocak 2007
  • xSammyJoe1

    xSammyJoe1

    19 Temmuz 2011