java – 根据输入查找最小的整数
发布时间:2020-12-15 02:03:01 所属栏目:Java 来源:网络整理
导读:我有一项任务,可以找到用户输入的最小,最大和平均数.基本上,它们输入正整数,由空格分隔,Java滚动它们并将它们相加.我能够找到总和,平均值和最大整数,但是,我无法找到最小的整数.我认为解决这个问题的最好方法是将表示最小int的变量设置为等于表示循环外部最
我有一项任务,可以找到用户输入的最小,最大和平均数.基本上,它们输入正整数,由空格分隔,Java滚动它们并将它们相加.我能够找到总和,平均值和最大整数,但是,我无法找到最小的整数.我认为解决这个问题的最好方法是将表示最小int的变量设置为等于表示循环外部最大int的变量.然后,在循环中,执行以下操作:
if(getInt < min) { min = getInt; } 其中getInt是用户输入的值,min是最小整数值.但是每次我运行它时,min都会返回0. 这是我的完整代码: import java.util.Scanner; public class exc5 { public static void main (String[] args) { System.out.println("Write a list of nonnegative integers,each seperated by a space. To signal the end of the list,write a negative integer. The negative integer will not be counted"); Scanner keyboard = new Scanner (System.in); keyboard.useDelimiter(" |n"); int count = 0; int sum = 0; int max = 0; int min = max; double average = 0; boolean notNull = true; while(notNull == true) { int getInt = keyboard.nextInt(); if(getInt < 0) { notNull = false; } else { if(getInt > max) { max = getInt; } if(getInt < min) { min = getInt; } sum += getInt; count++; average = (sum)/(count); } } System.out.println("Sum = " + sum); System.out.println("Average = " + average); System.out.println("Max = " + max); System.out.println("Minimum = " + min); } } 任何帮助表示赞赏! 解决方法
这个:
int max = 0; int min = max; 将min初始化为零. (毕竟,max还没有成为最大的整数.)所以这个: if(getInt < min) 永远不会是真的.尝试改变这个: int min = max; 对此: int min = Integer.MAX_VALUE; // largest possible Java `int` (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |