如何在数组中找到偶数或奇数?

时间:2015-07-14 10:31:03

标签: java

如何在阵列中找到偶数或奇数?

        int size;
        int[] myArray = new int[10];

        Scanner input = new Scanner(System.in);

        System.out.print("How many numbers do you enter:");
        size = input.nextInt();

        for(int c = 0; c < size; c++)
        {           
            System.out.print("Enter number:");      
            myArray[c] = input.nextInt();
        }

        input.close();

        for(int c = 0; c < size; c++)
        {           
            System.out.println(myArray[c]);     
        }

        if(size%2)
        {
            System.out.print("sadsadsad");
        }
   }
}

3 个答案:

答案 0 :(得分:0)

为什么要查看size

是否要检查数组的长度是奇数还是偶数?

如果你想要一个数组中的奇数和偶数,你需要用for循环中的每个元素来检查它。

for(int c = 0; c < size; c++)
 {   
    if(myarray[c]%2 == 0)
    {
        System.out.print(myarray[c] + " is even");
    }            
    else
    {
     System.out.print(myarray[c] + " is odd");    
    }
}

修改 找到偶数或奇数的更好方法是仅检查最后一个数字。

  

我们知道,如果最后一个数字可以被2整除,那么它就是一个奇数。

因此,如果您想查看,我们只需检查最后一位数字,而不是使用%运算符作为整数。

 for(int c = 0; c < size; c++)
     {   
        if(isEven(myarray[c]))
        {
            System.out.print(myarray[c] + " is even");
        }            
        else
        {
         System.out.print(myarray[c] + " is odd");    
        }
    }

public boolean isEven(int number)
{
 return (number%10) % 2 == 0;//number % 10 gets the last digit, checks if it is divisible by 2 or not
}

答案 1 :(得分:0)

你可以检查数字是偶数还是奇数

if((x%2)==0)
   // even
else
   // odd

您可以使用模数运算符,但这可能很慢。如果它是一个整数,你可以这样做:

if ( (x & 1) == 0 ) { even... } else { odd... }  

这是您编辑的代码

for(int c = 0; c < size; c++)
        {           
            if(myArray[c]%2==0)//check num is even or odd
            System.out.println(myArray[c]+" even");   
            else
            System.out.println(myArray[c]+" even");  
        }

答案 2 :(得分:0)

使用模数运算符检查数字是偶数还是奇数。如果我们将任意数字除以2且提醒为0则数字偶数,否则为奇数

  for(int i=0; i < numbers.length; i++){

      if(numbers[i]%2 == 0)
          System.out.println(numbers[i] + " is even number.");
      else
          System.out.println(numbers[i] + " is odd number.");

  }