define f(x,y) {return x**2 - 3*x*y + y**3;} define g(x,y) {return x**2 + y**2 - 4;} define intersecao(a,b,c,d,epsilon){ local transfere = fopen("transfere", "w"); local x = a, y,p, x1, y1,p1,delta=0.1; fprintf(transfere, "f(x,y) = x**2 + 3*x*y + y**3; \n"); fprintf(transfere, "g(x,y) = x**2 - y**2; \n"); while (x < b){ y = c; while (y < d){ if( abs( f(x,y)-g(x,y)) < delta ) { p = f(x,y); x1 = x+delta; y1 = y+delta; p1 = f(x1, y1); fprintf(transfere, "set arrow from %f, %f, %f to %f, %f, %f nohead \n", x, y , p ,x1, y1, p1); } y +=epsilon; } x +=epsilon; } fprintf(transfere, "splot f(x,y), g(x,y), 0 \n"); fprintf(transfere, "pause -2 \n"); fclose(transfere); } a=-10; b=10, c=-10; d=10, epsilon = 0.0051; intersecao(a,b,c,d,epsilon);