+ 1
How to calculate this code ??
int x = 0; int &y = x; y = 5; while(x<=5){ cout<<y++; x++; } cou<<x; the result are 57. but how ?
6 Réponses
+ 6
Hello again.. 😁
int &y=x creates an alias of x, i.e y and x point to same memory location.
Then y=5 means the memory location which is pointing to is assigned value 5 that makes x also equal to 5.
loop: x=5, cout<<y++, since its postfix so the value of y is given as output before it is incremented, so the output is 5. Now after y is incremented y=6, also recall that x points to same memory location as y, therefore x=6.
Now again x is incremented so x=7 and y=7
since x is greater than 5 so the loop stops and the value of x is given as output, which is 7.
Hence the result 57
+ 6
1st the condition is checked whether x<=5 then it enters the loop and the whole block of codes within while, is executed before it again checks for the condition x<=5. At that time it is found that x=7 and the condition is not satisfied.
+ 4
Welcome 😊
+ 2
Hello too Saumya 😅 i think you're my fav person along my C++ lessons 😂
Why the loop wasn't stoped when the x value were 6 ?
+ 2
Hope i have teacher like you 😄 thanks for guide my way 👍
+ 1
int i, j, c;
for(i=2; i<=100; i++)
{
c=0;
for(j=2; j<=i; j++)
{
if(i%j==0)
c++;
}
if(c<2) cout<<i;
}
How this loop code work ? i'm so confuse with the algorithm 😢