SORU
27 Temmuz 2012, Cuma


*, /, , -, % Operatörleri kullanmadan 3 Bir Numara bölmek

Nasıl, , , *, %, *- /1 operatörler kullanmadan 3 Bir Numara bölmek ister misin?

Numarasını imzalı veya imzasız olabilir.

CEVAP
27 Temmuz 2012, Cuma


Bu istenilen işlemi yapar simple function.Ama operatör, yapmanız gereken tüm bit operatörleri ile: değerler eklemektir gerektirir

// replaces the   operator
int add(int x, int y) {
    while(x) {
        int t = (x & y) <<1;
        y ^= x;
        x = t;
    }
    return y;
}

int divideby3 (int num) {
    int sum = 0;
    while (num > 3) {
        sum = add(num >> 2, sum);
        num = add(num >> 2, num & 3);
    }
    if (num == 3)
        sum = add(sum, 1);
    return sum; 
}

Olarak Jim çünkü bu eserler yorumladı:

  • n = 4 * a b
  • n / 3 = a (a b) / 3
  • So sum = a, n = a b ve yineleme

  • Zaman *yani 1,* 13 ** 12 11**

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Andytokkallos

    Andytokkallo

    27 Kasım 2007
  • CruzerLite

    CruzerLite

    1 EKİM 2011
  • The Dubstep FX

    The Dubstep

    5 Mart 2011