#include <stdio.h>
#include <stdlib.h>
#define PATRAT(x) x*x+x;
int main()
{
int x,y,z,t;
x = 104;
y = PATRAT(x - 1);
z = PATRAT(y++);
t = ++PATRAT(x);
printf ("%d %d %d", y, z, t);
return 1;
}
Given this code, the results are y = 105, z = 10506, t = 11130 and i can`t understand why. Can you please explain?