SORU
19 Mart 2014, ÇARŞAMBA


Birçok '' ifadeleri de?

Aşağıdaki kodu lazım nasıl çalışıyor, ama çirkin, ya da diğer şeylerin bir dizi aşırı. Formüller baktı ve birkaç çözüm yazmak için çalıştık, ama ben ifadeleri aynı miktarda ile sonuna kadar.

Bu durumda bana faydası olacağını ya da ifadeleri kabul edilebilir ise 16 matematik formül bir tür var mı?

Açıklama kod, bir tür eş zamanlı-sıra tabanlı bir oyun.. iki oyuncu var dört eylem düğmeleri ve her sonuç bir dizi (0-3), ama değişkenleri 'bir' ve 'iki' atanabilen bir şey varsa bu yardımcı olur. Sonuç, 0 = hiçbiri, 1 = p1 galibiyet, 2 = p2 kazanır galibiyet, 3 = Her ikisi de kazanır.

public int fightMath(int one, int two) {

    if(one == 0 && two == 0) { result = 0; }
    else if(one == 0 && two == 1) { result = 0; }
    else if(one == 0 && two == 2) { result = 1; }
    else if(one == 0 && two == 3) { result = 2; }
    else if(one == 1 && two == 0) { result = 0; }
    else if(one == 1 && two == 1) { result = 0; }
    else if(one == 1 && two == 2) { result = 2; }
    else if(one == 1 && two == 3) { result = 1; }
    else if(one == 2 && two == 0) { result = 2; }
    else if(one == 2 && two == 1) { result = 1; }
    else if(one == 2 && two == 2) { result = 3; }
    else if(one == 2 && two == 3) { result = 3; }
    else if(one == 3 && two == 0) { result = 1; }
    else if(one == 3 && two == 1) { result = 2; }
    else if(one == 3 && two == 2) { result = 3; }
    else if(one == 3 && two == 3) { result = 3; }

    return result;
}

CEVAP
19 Mart 2014, ÇARŞAMBA


Eğer bir formül ile gelip yapamıyorsanız, sonuçları gibi sınırlı sayıda için bir tablo kullanabilirsiniz:

final int[][] result = new int[][] {
  { 0, 0, 1, 2 },
  { 0, 0, 2, 1 },
  { 2, 1, 3, 3 },
  { 1, 2, 3, 3 }
};
return result[one][two];

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 3dmmfavs

    3dmmfavs

    29 Kasım 2009
  • After Effects Tutorials w/ Mikey

    After Effect

    24 HAZİRAN 2009
  • Wronchi Animation

    Wronchi Anim

    9 Mayıs 2011