Output Questions for Class 10 ICSE Computer Applications
Give output of the following method definition and also write the mathematical operation they carry out:
void test2(int a, int b)
{
while( a != b)
{
if ( a > b)
a = a — b;
else
a = b — a;
}
System.out.println(a);
}
if 4 and 17 are passed to the function.
Java
User Defined Methods
128 Likes
Answer
Infinite Loop
Working
Initial value of a
is 4 and b
is 17 as given in the question. As a
and b
are not equal, condition of while loop is true, first iteration starts. a
is less than b
so if condition is false, a = b - a
is executed and a
becomes 17 - 4 = 13
. Condition of while loop is true so second iteration starts. Again, if condition is false. This time a
becomes 17 - 13 = 4
. Like this, the value of a
keeps oscillating between 13 and 4 resulting in an infinite loop.
Answered By
73 Likes