Рубрики

Эффективный способ умножения с 7

Мы можем умножить число на 7, используя побитовый оператор. Сначала сдвиньте число влево на 3 бита (вы получите 8n), затем вычтите исходное число из сдвинутого числа и верните разницу (8n — n).


Программа:

CPP

# include<bits/stdc++.h> 

  

using namespace std;

 // реализация c ++

long multiplyBySeven(long n) 

{   

    / * Обратите внимание на внутреннюю скобку здесь. Это нужно

       потому что приоритет оператора '-' выше

       чем «<<» * /

    return ((n<<3) - n); 

    
/ * Программа драйвера для проверки вышеуказанной функции * /

int main() 

    long n = 4; 

      

    cout<<multiplyBySeven(n); 

    

    return 0; 

}

С

# include<stdio.h>

  

int multiplyBySeven(unsigned int n)

{  

    / * Обратите внимание на внутреннюю скобку здесь. Это нужно

       потому что приоритет оператора '-' выше

       чем «<<» * /

    return ((n<<3) - n);

}

  
/ * Программа драйвера для проверки вышеуказанной функции * /

int main()

{

    unsigned int n = 4;

    printf("%u", multiplyBySeven(n));

  

    getchar();

    return 0;

}

Джава

// Java программа для умножения любого
// положительное число до 7

  

class GFG {

      

    static int multiplyBySeven(int n)

    

        / * Обратите внимание на внутреннюю скобку здесь.

        Это необходимо, потому что приоритет

        оператора '-' выше

        чем «<<» * /

        return ((n << 3) - n);

    }

      

    // Код драйвера

    public static void main (String arg[]) 

    {

        int n = 4;

          

        System.out.println(multiplyBySeven(n));

    }

}

  
// Этот код предоставлен Anant Agarwal.

питон

# Python программа для умножения любого
# положительное число до 7

  
# Функция для искажения любого числа с 7

def multiplyBySeven(n):

  

    # Обратите внимание на внутреннюю скобку здесь.

    # Это нужно, потому что

    # приоритет оператора '-' равен

    # выше '<<'

    return ((n << 3) - n)

  
# Код драйвера

n = 4

print(multiplyBySeven(n))

  
# Этот код предоставлен Danish Raza

C #

// C # программа для умножения любого
// положительное число до 7

using System;

  

class GFG

{

    static int multiplyBySeven(int n)

    

        / * Обратите внимание на внутреннюю скобку здесь. Это нужно

        потому что приоритет оператора '-' выше

        чем «<<» * /

        return ((n << 3) - n);

    }

      

    // Код драйвера

    public static void Main () 

    {

        int n = 4;

        Console.Write(multiplyBySeven(n));

    }

}

  
// Этот код предоставлен Sam007

PHP

<?php

  

  

function multiplyBySeven($n)

  

    // Обратите внимание на внутреннюю скобку здесь.

    // это нужно потому что

    // приоритет оператора '-'

    // больше чем <<

    return (($n<<3) - $n);

}

  

    // Код драйвера

    $n = 4;

    echo multiplyBySeven($n);

  
// Этот код предоставлен vt_m.
?>


Выход:

28

Сложность времени: O (1)
Космическая сложность: O (1)

Примечание: работает только для натуральных чисел.
Эта же концепция может быть использована для быстрого умножения на 9 или другие числа.

Рекомендуемые посты:

Эффективный способ умножения с 7

0.00 (0%) 0 votes