使用双精度数组和用户输入查找 minimum/maximum 个数组
Finding minimum/maximum of arrays using a double array and user input
这是作业的具体要求:
“首先,启动 NetBeans 并关闭之前可能打开的所有项目(在顶部菜单中转到文件 ==> 关闭所有项目)。
然后创建一个名为 "MinMax"(不带引号)的新 Java 应用程序,它声明一个长度为 5 的双精度数组,并使用方法将来自命令的用户输入填充到该数组行并打印出数组中的最大(最高)和最小(最低)值。确定最大值和最小值的方法可能不使用 Java 中的任何内置排序方法。也就是说,您需要在这些方法中编写适当的逻辑。
注意:对于此作业和所有处理方法的未来作业,您应该调用适当的方法来完成指示的任务,而不是在主要方法本身中实现任务逻辑。"
具体来说,我在将 getMin 和 getMax 方法中的 int 数组转换为 main 方法中的双精度数组时遇到了问题。
package minmax;
import java.util.Scanner;
public class MinMax {
public static void main(String[] args) {
Scanner scnr = new Scanner(System.in);
double[] userVals = new double[5];
double userNumbers;
System.out.print("Enter 5 numbers: ");
userNumbers = scnr.nextDouble();
System.out.print("Minimum number: ");
}
public static int getMin(int[] array) {
int minNum = array[0];
for (int i = 0; i < array.length; ++i) {
if (array[i] < minNum) {
minNum = array[i];
}
}
return minNum;
}
public static int getMax(int[] array) {
int maxNum = array[0];
for (int i = 0; i < array.length; ++i) {
if (array[i] > maxNum) {
maxNum = array[i];
}
}
return maxNum;
}
}
我正在尝试打印出这两个最小值。和最大。 5 个用户号码。我知道我的代码在 main 方法中不完整,但那是因为不知道如何将 int 数组转换为 double 数组。
总结:
public static void main(String[] args) {
Scanner scnr = new Scanner(System.in);
double[] userVals = new double[5];
System.out.print("Enter 5 numbers: ");
for(int i=0;i< 5;i++){
userVals[i]= scnr.nextDouble();
}
System.out.print("Minimum number: "+ getMin(userVals));
}
public static double getMin(double[] array) {
double minNum = array[0];
for (int i = 0; i < array.length; ++i) {
if (array[i] < minNum) {
minNum = array[i];
}
}
return minNum;
}
这是作业的具体要求:
“首先,启动 NetBeans 并关闭之前可能打开的所有项目(在顶部菜单中转到文件 ==> 关闭所有项目)。
然后创建一个名为 "MinMax"(不带引号)的新 Java 应用程序,它声明一个长度为 5 的双精度数组,并使用方法将来自命令的用户输入填充到该数组行并打印出数组中的最大(最高)和最小(最低)值。确定最大值和最小值的方法可能不使用 Java 中的任何内置排序方法。也就是说,您需要在这些方法中编写适当的逻辑。
注意:对于此作业和所有处理方法的未来作业,您应该调用适当的方法来完成指示的任务,而不是在主要方法本身中实现任务逻辑。"
具体来说,我在将 getMin 和 getMax 方法中的 int 数组转换为 main 方法中的双精度数组时遇到了问题。
package minmax;
import java.util.Scanner;
public class MinMax {
public static void main(String[] args) {
Scanner scnr = new Scanner(System.in);
double[] userVals = new double[5];
double userNumbers;
System.out.print("Enter 5 numbers: ");
userNumbers = scnr.nextDouble();
System.out.print("Minimum number: ");
}
public static int getMin(int[] array) {
int minNum = array[0];
for (int i = 0; i < array.length; ++i) {
if (array[i] < minNum) {
minNum = array[i];
}
}
return minNum;
}
public static int getMax(int[] array) {
int maxNum = array[0];
for (int i = 0; i < array.length; ++i) {
if (array[i] > maxNum) {
maxNum = array[i];
}
}
return maxNum;
}
}
我正在尝试打印出这两个最小值。和最大。 5 个用户号码。我知道我的代码在 main 方法中不完整,但那是因为不知道如何将 int 数组转换为 double 数组。
总结:
public static void main(String[] args) {
Scanner scnr = new Scanner(System.in);
double[] userVals = new double[5];
System.out.print("Enter 5 numbers: ");
for(int i=0;i< 5;i++){
userVals[i]= scnr.nextDouble();
}
System.out.print("Minimum number: "+ getMin(userVals));
}
public static double getMin(double[] array) {
double minNum = array[0];
for (int i = 0; i < array.length; ++i) {
if (array[i] < minNum) {
minNum = array[i];
}
}
return minNum;
}