题目
分析
给正方形对角两点坐标,求另两点坐标。应该是对0前面的正负号要求不高。
代码
#include <stdio.h>
int main(void)
{
double x1, x2, ax1, ax2;
double y1, y2, ay1, ay2;
double a, b;
while (scanf("%lf%lf%lf%lf", &x1, &y1, &x2, &y2) != EOF) {
if (x1 == x2 && y1 == y2) {
printf("Impossible.\n");
continue;
}
/*
a + b = y1 - y2;
a - b = x2 - x1;
*/
a = ((y1-y2)+(x2-x1))/2;
b = ((y1-y2)-(x2-x1))/2;
ax1 = x2 - a;
ay1 = y2 + b;
ax2 = x2 + b;
ay2 = y2 + a;
printf("%.10lf %.10lf %.10lf %.10lf\n", ax1, ay1, ax2, ay2);
}
return 0;
}