title: Explain the working of a program that prints the GCD and LCD of two numbers
body: <p>I know its very simple but I can't find out what the variable <code>t</code> is for. </p>
  
  <pre><code>int main() {
      int a, b, x, y, t, gcd, lcm;
  
      printf("Enter two integers\n");
      scanf("%d%d", &amp;x, &amp;y);
  
      a = x;
      b = y;
  
      while (b != 0) {
         t = b;
          b = a % b;
          a = t;
      }
  
      gcd = a;
      lcm = (x*y)/gcd;
  
      printf("Greatest common divisor of %d and %d = %d\n", x, y, gcd);
      printf("Least common multiple of %d and %d = %d\n", x, y, lcm);
  
      return 0;
  }
  </code></pre>
  
  <p>If I remove the usage of variable <code>t</code>, the input has to be given in decreasing order (i.e. highest input first). If <code>t</code> is used everything works fine. I am very new to programming so please help.</p>