GATE | GATE CS 2019 | Question 62

Consider the following C program:

filter_none

edit
close

play_arrow

link
brightness_4
code

#include <stdio.h>
  
int main() {
 float sum = 0.0, j = 1.0, i = 2.0;
   
 while (i / j > 0.0625) {
      
    j = j + j;
    printf("%f\n", sum);
 };
 return 0;
}

chevron_right


The number of times variable sum will be printed When the above program is executed is _________ .

Note: This was Numerical Type question.
(A) 5
(B) 6
(C) 4
(D) 0


Answer: (A)

Explanation:

filter_none

edit
close

play_arrow

link
brightness_4
code

#include <stdio.h>
  
int main() {
 float sum = 0.0, j = 1.0, i = 2.0;
   
 while (i / j > 0.0625) {
      
    j = j + j;
    printf("%f\n", sum);
 };
 return 0;
}

chevron_right


According to “while” loop,

Initially i = 2.0, j = 1.0
i / j = 2.0 / 1. 0 = 2.0 > 0.0625

j = j + j 
j = 2.0
printed sum = 0.0

Second time, 
i / j = 1 > 0.0625
j = 4
printed sum = 0.0

Third time, 
i / j = 0.5 > 0.0625
j = 8
printed sum = 0.0

Fourth time,
i / j = 0.25 > 0.0625
j = 16
printed sum = 0.0

Fifth time, 
i / j = 0.125 > 0.0625
j = 32
printed sum = 0.0

Sixth time,
i / j = 0.0625 = 0.0625  
It violates the greater then condition. 
This time while loop will not execute.

So, option (A) is correct.


Quiz of this Question



My Personal Notes arrow_drop_up


Article Tags :

Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.