Define value of x in such a way that the expression (x == x+2) would evaluate to true. No rule for this programming puzzle.

Solutions

Jump to C, CSharp, JavaScript, PHP Solution.
You can submit your own solution in comment section in same/different programming language. If your solution is better or in different language we'll add here.

C

#include<stdio.h>

int main()
{
	double x = 1.0/0.0;
	printf("%d",x==x+2);
	return 0;
}
#include<stdio.h>
#define x 2|0

int main()
{
	printf("%d",x==x+2); //Basically, the expression is expanded to (2|0 == 2|(0+2)). 
	return 0;
}
#include<stdio.h>

int main() 
{ 
	float x = 1e10; 
	printf("%d\n", x == x + 2); 
}

CSharp

using System;

namespace testcs
{
    class Program
    {
        static int y;
        static int x
        {
            get
            {
                return y -= 2;
            }
        }
        static void Main(string[] args)
        {
            Console.WriteLine(x == x + 2);
        }
    }
}

JavaScript

<html>
<body>
<script>
    x = {
        value: 0,
        valueOf: function () {
            this.value += 2;
            return this.value;
        }
    };

    alert(x == x + 2);
</script>
</body>
</html>

PHP

<?php
  $x = 1e17;
  echo $x==$x+2;