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

  • Dopelives

    Dopelives

    30 Temmuz 2009
  • Kassem G

    Kassem G

    25 EKİM 2006
  • WPBeginner - WordPress Tutorials

    WPBeginner -

    17 Temmuz 2009