Загрузка данных



import java.util.Scanner;
import java.util.ArrayList;
import java.util.List;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        int n = sc.nextInt();
        double x = sc.nextDouble();
        double h = sc.nextDouble();
        double a = sc.nextDouble();

        List<Double> R = new ArrayList<>();

        // Задание 1. Создание массива
        for (int i = 1; i <= n; i++) {
            R.add(2.5 * Math.sin(a * x + i * i * h));
        }

        print(R);

        // Задание 2. Поиск первого минимума
        int min = 0;

        for (int i = 1; i < R.size(); i++) {
            if (R.get(i) < R.get(min)) {
                min = i;
            }
        }

        // Поиск последнего положительного
        int pos = -1;

        for (int i = 0; i < R.size(); i++) {
            if (R.get(i) > 0) {
                pos = i;
            }
        }

        // Удаление отрицательных элементов
        if (pos == -1) {
            System.out.println("Нет положительного элемента");
        } else {
            int left = Math.min(min, pos);
            int right = Math.max(min, pos);

            for (int i = right - 1; i > left; i--) {
                if (R.get(i) < 0) {
                    R.remove(i);
                }
            }
        }

        if (pos != -1) {
            print(R);
        }

        // Задание 3. Среднее арифметическое
        double sum = 0;
        int count = 0;
        boolean found = false;

        for (int i = 0; i < R.size(); i++) {
            if (R.get(i) < 0) {
                found = true;
                break;
            }

            sum += R.get(i);
            count++;
        }

        if (found && count > 0) {
            double sr = sum / count;
            System.out.printf("Sr=%.3f%n", sr);
        } else {
            System.out.println("Нет среднего значения");
        }

        sc.close();
    }

    // Метод вывода массива
    public static void print(List<Double> R) {
        System.out.print("R={");

        for (int i = 0; i < R.size(); i++) {
            System.out.printf("%.3f", R.get(i));

            if (i < R.size() - 1) {
                System.out.print("; ");
            }
        }

        System.out.println("}");
    }
}