Computer Sciences > Gate 2016 Set-2 > C Code
The following function computes XY for positive integers X and Y.

int exp(int X, int Y)
{
    int res = 1, a = X, b = Y;
    while ( b != 0 )
    {
        if ( b%2 == 0)
        {
            a = a*a;
            b = b/2;
        }
        else
        {
            res = res*a;
            b = b-1;
        }
    }
    return res;
}

Which one of the following conditions is TRUE before every iteration of the loop
A
XY= ab
B
(res ∗ a) Y = (res ∗ X) b
C
XY = res ∗ ab
D
XY = (res ∗ a) b

Correct : C Code

Similar Questions

What will be the output of the following pseudo-code when parameters are passed by reference and dynamic scoping is assumed? a=3; void n(x) {x = x * a; prin...
#120 MCQ
What will be the output of the following pseudo-code when parameters are passed by reference and dynamic scoping is assumed? a=3; void n(x) {x = x * a; prin...
#120 MCQ
What will be the output of the following pseudo-code when parameters are passed by reference and dynamic scoping is assumed? a=3; void n(x) {x = x * a; prin...
#120 MCQ

Related Topics

No tags found

Unique Visitor Count

Total Unique Visitors

Loading......