#include <stdlib.h>
#include <stdio.h>
#include <string.h>

double f(double x, double y)
{
    if ((x >= 0) && (x < 5)) return 2*x-y;
    if (( x<0) && (y<0))  return x*x;
    else return 5*y+1;
}

double g(double x, double y)
{
    double f = ((x>=0)*(x<5)+2*(y<0)*(x<0))*(2-(x>=0)*(x<5)-2*(y<0)*(x<0))*(2*x-y)+((x>=0)*(x<5)+2*(y<0)*(x<0))*((x>=0)*(x<5)+2*(y<0)*(x<0)-1)*(x*x)/2+((x>=0)*(x<5)+2*(y<0)*(x<0)-1)*((x>=0)*(x<5)+2*(y<0)*(x<0)-2)*(5*y+1)/2;
    return f;
}

int main()
{
    for(int i = 0; i < 100000; ++i)
    {
        double x = rand()%20-10;
        double y = rand()%20-10;

        if (f(x,y) - g(x,y))  printf("%lf   %lf\n",f(x,y),g(x,y));
    }
}
