Java 程序:检查一个数字是正数还是负数

原文:https://www.studytonight.com/java-programs/java-program-to-check-whether-a-number-is-positive-or-negative

如果一个数大于 0,则认为它是正的,如果小于 0,则认为它是负的。这里需要注意的一点是,0 既不是正的,也不是负的。

这里,给我们一个数字,我们的任务是找出给定的数字是正数还是负数。

输入:输入数字:56

输出:为正数。

程序 1:检查一个数字是正数还是负数

在这个方法中,我们将使用关系运算符来检查给定的数字是正数还是负数。使用关系运算符背后的主要逻辑是

  • 如果数字大于 0,则为正数。
  • 如果数字小于 0,则为负数。
  • 如果一个数=0,那么它既不是正的也不是负的。

算法

  1. 开始
  2. 声明一个变量。
  3. 初始化变量。
  4. 使用关系运算符检查是正数还是负数。
  5. 显示结果。
  6. 停下来。

下面是相同的代码。

下面的程序演示了如何使用关系运算符来检查给定的数字是正数还是负数。

//Java Program to check whether the given number is positive or negative
import java.util.Scanner;

public class CheckNumber
{
    // Driver method
     public static void main(String []args)
     {
        Scanner sc=new Scanner(System.in);
        int num ;     //Number declaration
        System.out.println("Enter the number");
        num=sc.nextInt();    //Number Initialization

        if(num>0)
        System.out.println("It is a positive number");
        else if(num<0)
        System.out.println("It is a negative number");
        else
        System.out.println("Neither positive nor negative");
     } 
}

输入数字 45 是正数

程序 2:检查一个数字是正数还是负数

这里,我们将使用 Integer.signum()方法来检查数字是正数还是负数。signum()是一个接受Integer类型参数的内置函数。它用于检查一个数字是正数还是负数。使用 Integer.signum()方法背后的逻辑是,

  • 如果参数为 0,则返回 0。
  • 如果参数大于 0,则返回 1。
  • 如果参数小于 0,则返回-1。

算法

  1. 开始
  2. 声明一个变量。
  3. 初始化变量。
  4. 调用函数检查数字是正数还是负数。
  5. 使用 Integer.signum()方法检查结果。
  6. 返回结果。
  7. 显示结果。
  8. 停下来。

下面是相同的代码。

下面的程序演示了如何使用 Integer.signum()方法来检查给定的数字是正数还是负数。

//Java Program to check whether the given number is positive or not
import java.util.Scanner;

public class CheckNumber
{
    //Function Definitin
    static int checkNum(int x)
    { 
        // inbuilt signum function 
        int ans = Integer.signum(x); 
        return ans; 
    } 

    // Driver method
     public static void main(String []args)
     {
        Scanner sc=new Scanner(System.in);
        int num ;     //Number declaration
        System.out.println("Enter the number");
         num=sc.nextInt();    //Number Initialization

        int res=checkNum(num);    //Function Call
        if(res==0)
        System.out.print(num + " is Zero");
        else if (res == 1) 
            System.out.print(num + " is Positive"); 
        else
            System.out.print(num + " is Negative");

     }
}

输入数字-12 -12 为负数

程序 3:检查一个数字是正数还是整数

这里,我们将使用移位运算符来检查一个数字是正数还是负数。移位运算符(Val>>31)将最高位复制到每隔一位。我们知道任何负数的最高位是 1,任何其他数字的最高位是 0。因此,在(Val>>31)之后,我们可以使用&运算符来检查一个数字是正数还是负数。

  • 如果((Val>>31) & 1)为 1,则该数字将为负数。
  • 如果((Val>>31) & 1)为 0,则该数字将为正数。

算法

  1. 开始
  2. 声明一个变量。
  3. 初始化变量。
  4. 调用函数检查数字是正数还是负数。
  5. 使用移位运算符检查结果。
  6. 返回结果。
  7. 显示结果。
  8. 停下来。

下面是相同的代码。

下面的程序演示了如何使用移位运算符来检查给定的数字是正数还是负数。

//Java Program to check whether the given number is positive or not
import java.util.Scanner;

public class CheckNumber
{
    //Function Definition
    static String checkPosNeg(int val) 
    { 

        String[] result = { "Positive", "Negative" }; 

        // checks if the number is positive or negative 
        return result[(val >> 31) & 1]; 
    } 

    // Driver method
     public static void main(String []args)
     {
        Scanner sc=new Scanner(System.in);
        int num ;     //Number declaration
        System.out.println("Enter the number");
        num=sc.nextInt();    //Number Initialization

        System.out.println(num + " is " + checkPosNeg(num));   //Function Call
     }     
}

输入数字 867 867 为正