0 java
这是我需要弄清楚的问题:
编写一个名为percentEven的方法,该方法接受一个整数数组作为参数,并将数组中偶数的百分比作为实数返回.例如,如果数组存储元素[6,2,9,11,3],那么您的方法应返回40.0.如果数组不包含偶数元素或根本没有元素,则返回0.0.
这是我到目前为止:
import java.util.*;
public class Change {
public static void main(String[] args) {
Scanner console = new Scanner(System.in);
System.out.println("Let's find the range.");
System.out.println("Enter five numbers to find the range.");
int num = console.nextInt();
int[] list = new int[num];
System.out.println("The numbers you entered are: " + list.length);
System.out.println();
percentEven(list);
}
public static void percentEven(int[] num){
int percent = 0;
int even = 0;
for(int i = 0; i < num.length; i++){
if(num[i] % 2 == 0){
even++;
}
}
percent = (even / num.length) *100;
System.out.println("The percent of even numbers is: " + percent);
}
}
Run Code Online (Sandbox Code Playgroud)
当我运行它时,我得到100%的百分比.
这里有两个问题:
将其中一个投入双人或浮动.
percent = (even / (double) num.length) *100;
Run Code Online (Sandbox Code Playgroud)
另一个问题是你永远不会为数字分配任何值,因此它们都是0. 0 % 2等于0,因此根据定义,列表是100%偶数.
您还应该在方法中有一个基本案例nums == {},它将作为赋值状态返回0.0.