Массив, который объявит 5 случайных чисел от 0 до 100. Затем он будет усреднять все числа, превышающие 70

#java #arrays #eclipse #average

#java #массивы #eclipse #среднее

Вопрос:

Это вопрос домашнего задания, на который мне нужно ответить.

Напишите полную программу, которая объявляет массив из любых пяти целых чисел от 0 до 100 и усредняет только те целые числа, которые больше 70 .

Вот мой код, который я написал до сих пор.

 import java.util.Random;
public class TestLoop{ 

    public static void main(String[] args){
        Random Rnum = new Random();
        int[] ar1 = new int[100];
        for(int i = 0; i < 5; i  ) {
            ar1[i] = Rnum.nextInt(100);
               System.out.print(ar1[i]   "  ");

        if(ar1[i] > 70)    

            System.out.print(ar1[i]   "  ");
        }
    }
}
  

Это позволяет мне получить мои пять случайных чисел, но, похоже, я не могу понять, как усреднить те, которые будут больше 70. Последние несколько строк кода — это моя попытка изолировать числа, превышающие 70, от остальных, которых нет.

Ответ №1:

попробуйте это:

 public static void main(String[] args){
    Random Rnum = new Random();
    int[] ar1 = new int[100];
    int counter=0;
    double total=0;
    for(int i = 0; i < 5; i  ) {
        ar1[i] = Rnum.nextInt(100);
           System.out.print(ar1[i]   "  ");

        if(ar1[i] > 70)
        {    
            total =ar1[i];
            counter  ;
            System.out.print(ar1[i]   "  ");
        }
    }
    if(counter>0)
    {
        double average=total/counter;
        System.out.println("average=" average);
    }

}
  

Комментарии:

1. Вау, это работает. Однако мне пришлось удалить System.out.print сразу после счетчика . Это выглядело так, как будто в программе было более 5 чисел. Итак, мне нужно было создать переменную total и counter, чтобы я мог разделить счетчик на общее количество. Я просматриваю это и, думаю, теперь понимаю. Спасибо!

Ответ №2:

Вы могли бы просто отслеживать, сколько чисел выше 70 и какова их сумма. public static void main(String[] аргументы){ Random Rnum = new Random();

 //added variables
int count = 0;
int average = 0;

int[] ar1 = new int[100];
for(int i = 0; i < 5; i  ) {
    ar1[i] = Rnum.nextInt(100);
       System.out.print(ar1[i]   "  ");

if(ar1[i] > 70)    
    // increment count
    count  ;
    // add the number greater than 70 to the average
    average  = ar[i];
    System.out.print(ar1[i]   "  ");
}

//once out of the loop devide the sum of all     //integers greater than 70 (stored in average) by //the number of integers that were greater than 70 (stored in count)
  

среднее = среднее / количество;

System.out.println(среднее значение); }

Комментарии:

1. Спасибо и вам. Я ценю, что вы нашли время для ответа.