# Find solutions for your homework

Assume That X, Y And Z Are Unsigned And Cond(...) Is Some Function Which Returns A 0 Or A 1 Int Result. How Would You Replace The Assigment Statement: Z = Cond(...) ? X : Y; With A Single Assignment Statement Having A Right-Hand Side Which Does Not Use The Ternary Operator And Does Not Call Any Functions Other Than Cond(...). Given The Following

## Replacing a Ternary Operator in an Assignment Statement

**To replace the assignment statement z = cond(...) ? x : y; without using the ternary operator, you can use an if-else statement or bitwise operations.**To replace the assignment statement z = cond(...) ? x : y; without using the ternary operator, we can use an if-else statement or bitwise operations.

**Using an If-Else Statement:**```cpp if (cond(...) == 1) { z = x; } else { z = y; } ``` In this approach, we check the condition using an if statement. If the condition returned by the cond(...) function is true (1), we assign the value of x to z. Otherwise, we assign the value of y to z.

**Using Bitwise Operations:**```cpp z = (x & cond(...)) | (y & ~cond(...)); ``` In the second approach, we use bitwise AND (&), NOT (~), and OR (|) operators to manipulate the bits of x and y based on the result of the cond(...) function. We extract the bits from x that correspond to the true condition, and the bits from y that correspond to the false condition, then combine them using the bitwise OR operator to get the final value of z.