小C学英语很努力,可惜学习方法不对,英语成绩不上不下,结果慢慢对英语失去了兴趣,不管怎么说还是上了本地的一所高级中学,成了一个高中生。作为理科生,小C的数理化还是比较不错的,所以经常有女生来请教问题。今天数学老师讲到椭圆方程x^2/a^2+y^2/b^2=1 (a,b>0) ,数学老师问,如果已知椭圆方程以及a、b,给定一点(x、y),判断该点相对椭圆的位置。小C听到这个问题笑了, 他知道只要把点坐标代入方程,左边的结果大于1就是椭圆外,小于1为椭圆内。
输入格式:
多组测试数据, 每组测试数给定a b x y,4个整数。(1<=a,b,x,y<=100)
输出格式:
根据相对位置分别输出 “out ellipse” 、 “in ellipse”。(数据中不会出现在椭圆上这种情况)每个输出占一行。
输入样例:
在这里给出一组输入。例如:
1 2 2 2
1 2 0 0
输出样例:
在这里给出相应的输出。例如:
out ellipse
in ellipse
#include <stdio.h>
int main()
{
int a,b,x,y;
float m;
while (scanf("%d%d%d%d",&a,&b,&x,&y) != EOF)
{
m = x*x*1.0/(a*a)+y*y*1.0/(b*b);//这个地方出错,写成x*x*1.0/a*a了,这样就变成先除后乘,可能是因为python中有平方优先,混淆了。。还有注意乘上1.0
if (m > 1)
{
printf("out ellipse\n");
}
else if (m < 1)
{
printf("in ellipse\n");
}
}
}