Новая Школа - онлайн-школа подготовки к ЕГЭ
Задача Задача №3252308
А
Аноним
25 мая 2025 10:27 · публичный вопрос
А
Аноним

Запуск программы с++: Размер массива 25 Генерация случайных чисел от 201-100 Среднее арифметичесаое отрицательных элементов: нет Адреса чётных элементов

Ответ нейросети
25 мая 2025 10:27

Конечно! Давайте разберем задачу поэтапно и подготовим пример программы на C++, которая выполняет указанные требования.

Условия задачи:

  • Размер массива: 25 элементов
  • Генерация случайных чисел в диапазоне от 100 до 201 (предполагаю, что было опечатка, и диапазон 100–201)
  • Необходимо найти:
    • Среднее арифметическое отрицательных элементов (в вашем случае это "нет", значит отрицательных элементов нет)
    • Адреса (индексы) четных элементов массива

Решение и пошаговое объяснение

1. Создаем массив из 25 элементов

2. Заполняем массив случайными числами в диапазоне [100, 201]

3. Находим отрицательные элементы — в данном случае их нет, следовательно, вывод будет соответствующий

4. Находим индексы всех четных элементов и выводим их


Пример кода на C++:

#include <iostream>
#include <cstdlib>  // Для функции rand() и srand()
#include <ctime>    // Для функции time()

int main() {
    const int SIZE = 25;
    int arr[SIZE];

    // Инициализация генератора случайных чисел
    std::srand(std::time(nullptr));

    // Генерация случайных чисел в диапазоне [100, 201]
    for (int i = 0; i < SIZE; ++i) {
        arr[i] = rand() % 102 + 100; // %102 даст диапазон 0..101, добавляем 100
    }

    // Вывод массива (по желанию)
    std::cout << "Массив:\n";
    for (int i = 0; i < SIZE; ++i) {
        std::cout << "arr[" << i << "] = " << arr[i] << "\n";
    }

    // Вычисление среднего арифметического отрицательных элементов
    int sumNeg = 0;
    int countNeg = 0;
    for (int i = 0; i < SIZE; ++i) {
        if (arr[i] < 0) {
            sumNeg += arr[i];
            ++countNeg;
        }
    }

    if (countNeg > 0) {
        double avgNeg = static_cast<double>(sumNeg) / countNeg;
        std::cout << "Среднее арифметическое отрицательных элементов: " << avgNeg << "\n";
    } else {
        std::cout << "Отрицательных элементов нет.\n";
    }

    // Поиск и вывод индексов четных элементов
    std::cout << "Индексы четных элементов:\n";
    bool foundEven = false;
    for (int i = 0; i < SIZE; ++i) {
        if (arr[i] % 2 == 0) {
            std::cout << "индекс " << i << "\n";
            foundEven = true;
        }
    }

    if (!foundEven) {
        std::cout << "Четных элементов нет.\n";
    }

    return 0;
}

Объяснение кода

  • Генерация случайных чисел: с помощью rand() и srand() для инициализации генератора случайных чисел в текущий момент времени.
  • Диапазон: rand() % 102 + 100 — дает числа от 100 до 201 включительно.
  • Обработка отрицательных элементов: проверка if (arr[i] < 0), в данном случае, отрицательных чисел не будет, следовательно, сообщение о их отсутствии.
  • Вывод индексов четных элементов: условие if (arr[i] % 2 == 0).

Если у вас есть конкретные требования по диапазону или дополнительные условия, скажите — я доработаю решение!


Если нужно, я могу подготовить более компактное или расширенное решение.