比数字,要求不要使用> ,<等比较符号

比较两个数字是否都是正的,或者都是负的,

如果两个数的符号相同(都是正数,都是负数),则输出 Signs are not opposot

如果两个数的符号不相同(一正一负),则输出Signs are opposot

如果两个数都是0,则输出Signs can't be sure

要求:不允许使用>,<,>=,<=,==,!=等比较符


我们知道java并不像c或出 c++那样,在判断语句中直接填上一个数就行if(x),因此在不使用比较符的情况下,比较麻烦,我们知道java中的字符串比较是非常方便的,因此,我们可以把int型的数据转换成String 类型进行比较,在转换的过程中,我们需要注意

1.需要把int型的数据的绝对值转成String类型,这样可以判断这个数是正的还是负的

2.还得把这个数也转换成字符串,不能把绝对值转化的字符串和这个数本身比较,因为一个是String一个是int,两个数据是不相等的



具体代码如下:

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		while (sc.hasNext()) {
			int x = sc.nextInt();
			int y = sc.nextInt();

			String xx = String.valueOf(Math.abs(x));
			String yy = String.valueOf(Math.abs(y));
			String xxx = String.valueOf(x);
			String yyy = String.valueOf(y);

			if (xx.equals("0") || yy.equals("0")) {
				System.out.println("Signs can't be sure");
			} else if ((xx.equals(xxx) && yy.equals(yyy))) {
				System.out.println("Signs are not opposot");
			} else if (!xx.equals(xxx) && !yy.equals(yyy)) {
				System.out.println("Signs are not opposot");
			} else {
				System.out.println("Signs are opposite");
			}

		}
	}
}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值