首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >返回min的java数组

返回min的java数组
EN

Stack Overflow用户
提问于 2012-08-08 00:10:07
回答 4查看 192关注 0票数 0

嗨,我写这个数组是为了读入30个整数并读出最小值和最大值。我已经解决了最大值,但最小值不起作用,感谢所有的帮助,如上所述我已经解决了最大值,但最小值不起作用

代码语言:javascript
复制
import java.io.*;
import java.util.*;

public class Uppgift1
{
public static void main(String args[])throws IOException
{
BufferedReader stdin = new BufferedReader
        (new InputStreamReader (System.in));

        int antal = 0; 
        int summa = 0;
        double medel = 0;
        int min;
        int max = 0;
                System.out.print("Hur manga tal vill du mata in(max 30)? ");
                antal = Integer.parseInt(stdin.readLine());

        int [] array = new int[antal];

        for(int i = 0; i<antal; i++){
        array[i] = Integer.parseInt(stdin.readLine());
        summa = summa +array[i];
        medel = summa / antal; 


        }
                System.out.println("summan av talen är "+summa);
                System.out.println("medel av alla tal är "+medel);

        for (int i = 0; i < antal; i++) 
      {
        while(array[i]>max)
            { 
        max=array[i];
          }
            } 


            System.out.println("max numret är " + max);


        for (int i = 0; i < antal; i++) 
            {
                while(array[i]<min)
                    { 
                        min=array[i];
                    }
            } 


            System.out.println("min numret är " + min);





}}
EN

回答 4

Stack Overflow用户

发布于 2012-08-08 00:12:14

min从零开始,因此它比较的值小于用户输入的任何正数。

通常,在进入循环之前,您从最低最高值开始。这会牺牲可用范围中的两个数字,这通常是可以的。或者,您可以将minmax都设置为序列的初始元素。

另一个问题是您使用while而不是if:这不会损害结果,但会大大损害可读性。

最后,您可以在同一个循环中搜索minmax

票数 5
EN

Stack Overflow用户

发布于 2012-08-08 00:17:46

这样做是为了计算最小和最大值,假设你有一个名为numbers的数组。初始化变量min,max,如下所示

代码语言:javascript
复制
int min = numbers[0];
int max = numbers[0];

for(int i=1; i< numbers.length(); i++) {
  if(min>numbers[i]) {
     min = numbers[i];
  }
  if(max<numbers[i]) {
    max = numbers[i];
  }
}

System.out.println("Max Is : " + max);
System.out.println("Min Is : " + min);
票数 1
EN

Stack Overflow用户

发布于 2012-08-08 00:12:56

使用可能的最大整数(Integer.MAX_VALUE)初始化min变量。任何小于这个值的数字都会被找到。

使用可能的最小整数(Integer.MIN_VALUE)初始化max变量。任何大于这个数的数都会被找到。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11849953

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档