Assume that $X$ and $Y$ are non-zero positive integers. What does the following Pascal program segment do?
while X <> Y do if X > Y then X := X - Y else Y := Y - X; write(X);
Computes the LCM of two numbers
Divides the larger number by the smaller number
Computes the GCD of two numbers
None of the above
while X <> Y && (X!=0 || Y!=0) do // I don't know if '&&' works in pascal if X > Y then //Even if this considered as comment or not. X := X - Y else Y := Y - X; write(X);
Answer: C Let $X = 3$ and $Y = 7$. 1st pass: $X = 3$, $Y = 4$ 2nd pass: $X = 3$, $Y = 1$ 3rd pass: $X = 2$, $Y = 1$ 4th pass: $X = 1$, $Y = 1$ write $(X)$, which writes $1$. Ref: https://en.wikipedia.org/wiki/Euclidean_algorithm
Apply Option Elimination
take X=6,Y=4
if Ans will 12 then LCM , 2 then GCD, 1 then Divides the larger number by the smaller number
Now Trace the code
Iteration1 :-X=2,Y=4
2:-X=2,Y=2
Print 2 ; which is GCD
take another pair X=12,Y=8 which gives 4 means ans is GCD .
Hence C is the Correct Ans