- Home
- Output Questions for Class 10 ICSE Computer Applications
Give output of the following function definition and also write the
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.
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.