Given 4 integers a, b, y, and x, where x can only either 0 and 1 only. The ask is as follows:
If 'x' is 0, Assign value 'a' to variable 'y' Else (If 'x' is 1) Assign value 'b' to variable 'y'.
Note: – You are not allowed to use any conditional operator (including ternary operator) or any arithmetic operator ( +, -, *, /).
Input : a = 5 , b = 10, x = 1 Output : y = 10 Input : a = 5, b = 10 , x = 0 Output : y = 5
Asked in : Google Interview
An Idea is to simply store both 'a' and 'b' in an array at 0th and 1th index respectively. Then store value to 'y' by taking 'x' as index.
Below is implementation
Value assigned to 'y' is 5
This article is contributed by Sahil Chhabra (akku). If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.
- Set a variable without using Arithmetic, Relational or Conditional Operator
- How to sum two integers without using arithmetic operators in C/C++?
- std::string::assign() in C++
- vector :: assign() in C++ STL
- forward_list assign() function in C++ STL
- list assign() function in C++ STL
- deque assign() function in C++ STL
- C++ 17 | New ways to Assign values to Variables
- Programming puzzle (Assign value without any control statement)
- Program to Assign grades to a student using Nested If Else
- Print "Even" or "Odd" without using conditional statement
- Conditional or Ternary Operator (?:) in C/C++
- Implementing ternary operator without any conditional statement
- Operators in C / C++
- What are the operators that can be and cannot be overloaded in C++?