首页 > 解决方案 > 如何在java中以升序显示这个练习的数字?

问题描述

我得到了这个练习,我需要在 java 中构建一个程序,该程序创建一个一维表,其中将存储 10 个整数,将从键盘读取。最后程序将显示所有大于平均值的整数。(如您所见,我已经这样做了)。但我需要按升序显示大于平均值的数字。所以最后应该有另一条指令,请帮助我应该说我是java的初学者。shuma=sum, mesatarja=average tabela = array 虽然

请查看并帮我解决这个问题:)

扫描仪输入 = 新扫描仪(System.in);

    int [] tabela = new int [10];
    
    System.out.print("Ju lutem jepni 10 nr te plote: ");
    
    for (int i = 0; i<tabela.length; i++) {
        tabela[i] = in.nextInt();
    }
    
    System.out.println("Tabela = " + Arrays.toString(tabela));

    int shuma = 0;
    
    for (int i = 0; i < tabela.length; i++)
    shuma = shuma + tabela[i];
    
    double mesatarja = shuma*1.0/tabela.length;
    
    System.out.println("Mesatarja e numrave eshte: " + mesatarja);
    
    System.out.print("Numrat me te medhenj se mesatarja jane: ");
    
    for (int i = 0; i < tabela.length; i++) {
        if (tabela[i] > mesatarja) {
        System.out.print(tabela[i] + ", ");
        }
        }

标签: java

解决方案


想到的最简单的想法是对数组进行排序。填充数组后,您应该使用任何排序算法。使用“冒泡排序”的示例:

for (int i = 0; i < tabela.length-1; i++) 
    for (int j = 0; j < tabela.length-i-1; j++) 
        if (tabela[j] > tabela[j+1]) 
           { 
             int temp = tabela[j]; 
             tabela[j] = tabela[j+1]; 
             tabela[j+1] = temp; 
           } 

在这里,您可以找到算法及其示例的说明。


推荐阅读