不可以!

题目描述

判断:两个数x、y的正负性。

要求:不可以使用比较运算符,即"<",">","<=",">=","==","!="

输入

有多组数据,每组数据占一行,每一行两个数x,y。 x、y保证在int范围内。

输出

每组数据输出占一行。 如果两个数是一正一负,输出"Signs are opposite" 如果是同为正或同为负,输出"Signs are not opposot" 如果无法确定,输出"Signs can't be sure" 输出不包括引号

样例输入

1 1
-1 1

样例输出

Signs are not opposot
Signs are opposite

代码

#include<stdio.h>
#include<math.h>
int main()
{
	int x,y,a,b;
	while(scanf("%d %d",&x,&y)!=EOF)
	{
		a=abs(x+y);//两数之和的绝对值 
		b=abs(x)+abs(y);//两数绝对值之和 
		if(a==b&&x!=0&&y!=0)//同为正或同为负
		printf("Signs are not opposot\n");
		else if(a<b)//两个数是一正一负
		printf("Signs are opposite\n");
		else//无法确定
    	printf("Signs can't be sure\n");
	}
	return 0;
}
#include<stdio.h>
#include<math.h>
int main()
{
    double n,m;
    while(~scanf("%lf %lf",&n,&m))
    {
        double s,k;
        s=fabs(n+m);
        k=fabs(n-m);
        if(k-s>0)
            printf("Signs are opposite\n");
        else if(s-k>0)
            printf("Signs are not opposot\n");
        else printf("Signs can't be sure\n");
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/hanyue0102/article/details/81228200