Donat un nombre, la tasca és multiplicar-lo per 10 sense utilitzar l'operador de multiplicació?
Exemples:
Input : n = 50 Output: 500 // multiplication of 50 with 10 is = 500 Input : n = 16 Output: 160 // multiplication of 16 with 10 is = 160
scan.next java
A solució senzilla perquè aquest problema és executar un bucle i afegir n amb si mateix 10 vegades. Aquí hem de fer 10 operacions.
C++
// C++ program to multiply a number with 10 // without using multiplication operator #include using namespace std; // Function to find multiplication of n with // 10 without using multiplication operator int multiplyTen(int n) { int sum=0; // Running a loop and add n with itself 10 times for(int i=0;i<10;i++) { sum=sum+n; } return sum; } // Driver program to run the case int main() { int n = 50; cout << multiplyTen(n); return 0; }
Java // Java program to multiply a number with 10 // without using multiplication operator import java.util.*; public class GFG { // Function to find multiplication of n with // 10 without using multiplication operator public static int multiplyTen(int n) { int sum = 0; // Running a loop and add n with itself 10 times for (int i = 0; i < 10; i++) { sum = sum + n; } return sum; } // Driver program to run the case public static void main(String[] args) { int n = 50; System.out.println(multiplyTen(n)); } } // This code is contributed by Prasad Kandekar(prasad264)
Python3 # python program to multiply a number with 10 # without using multiplication operator # Function to find multiplication of n with # 10 without using multiplication operator def multiplyTen(n): sum = 0 # Running a loop and add n with itself 10 times for i in range(10): sum += n return sum # Driver code n = 50 print(multiplyTen(n)) # This code is contributed by Prasad Kandekar(prasad264)
C# // C# program to multiply a number with 10 // without using multiplication operator using System; public class GFG { // Function to find multiplication of n with // 10 without using multiplication operator static int MultiplyTen(int n) { int sum = 0; // Running a loop and add n with itself 10 times for (int i = 0; i < 10; i++) { sum += n; } return sum; } // Driver program to run the case static void Main(string[] args) { int n = 50; Console.WriteLine(MultiplyTen(n)); } } // This code is contributed by Prasad Kandekar(prasad264)
JavaScript // Javascript program to multiply a number with 10 // without using multiplication operator // Function to find multiplication of n with // 10 without using multiplication operator function multiplyTen(n) { let sum = 0; // Running a loop and add n with itself 10 times for (let i = 0; i < 10; i++) { sum += n; } return sum; } // Driver code let n = 50; console.log(multiplyTen(n)); // This code is contributed by Prasad Kandekar(prasad264)
Sortida
500
Complexitat temporal: O(1)
Espai auxiliar: O(1)
A millor solució és utilitzar la manipulació de bits. Hem de multiplicar n per 10 és a dir; n*10 podem escriure això com n*(2+8) = n*2 + n*8 i com que no se'ns permet utilitzar l'operador de multiplicació, podem fer-ho mitjançant l'operador de bits de desplaçament a l'esquerra. Així n*10 = n<<1 + n<<3.
// C++ program to multiply a number with 10 using // bitwise operators #include using namespace std; // Function to find multiplication of n with // 10 without using multiplication operator int multiplyTen(int n) { return (n<<1) + (n<<3); } // Driver program to run the case int main() { int n = 50; cout << multiplyTen(n); return 0; }
Java // Java Code to Multiply a number with 10 // without using multiplication operator import java.util.*; class GFG { // Function to find multiplication of n // with 10 without using multiplication // operator public static int multiplyTen(int n) { return (n << 1) + (n << 3); } /* Driver program to test above function */ public static void main(String[] args) { int n = 50; System.out.println(multiplyTen(n)); } } // This code is contributed by Arnav Kr. Mandal.
Python 3 # Python 3 program to multiply a # number with 10 using bitwise # operators # Function to find multiplication # of n with 10 without using # multiplication operator def multiplyTen(n): return (n << 1) + (n << 3) # Driver program to run the case n = 50 print (multiplyTen(n)) # This code is contributed by # Smitha
C# // C# Code to Multiply a number with 10 // without using multiplication operator using System; class GFG { // Function to find multiplication of n // with 10 without using multiplication // operator public static int multiplyTen(int n) { return (n << 1) + (n << 3); } // Driver Code public static void Main() { int n = 50; Console.Write(multiplyTen(n)); } } // This code is contributed by Nitin Mittal.
PHP // PHP program to multiply a // number with 10 using // bitwise operators // Function to find multiplication // of n with 10 without using // multiplication operator function multiplyTen($n) { return ($n << 1) + ($n << 3); } // Driver Code $n = 50; echo multiplyTen($n); // This code is contributed by nitin mittal. ?> JavaScript <script> // JavaScript program to multiply a number with 10 using // bitwise operators // Function to find multiplication of n with // 10 without using multiplication operator function multiplyTen(n) { return (n<<1) + (n<<3); } // Driver program to run the case let n = 50; document.write(multiplyTen(n)); // This code is contributed by Surbhi Tyagi. </script>
Sortida:
500
Complexitat temporal: O(1)
concatenar una cadena java
Espai auxiliar: O(1)