Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
Заблокирован

После каждого нечетного элемента массива вставить максимальный простой элемент этого же массива

27.06.2017, 14:15. Показов 2154. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
ЗАДАЧА 1.
В целочисленный массив X(n) после каждого нечетного элемента
вставить максимальный простой элемент этого же массива. Определить
среднее арифметическое простых элементов массива до и после вставки.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.06.2017, 14:15
Ответы с готовыми решениями:

Вставить после каждого нечетного элемента массива максимальный простой элемент этого же массива
В целочисленный массив X(n) после каждого нечетного элемента вставить максимальный простой элемент этого же массива. Определить среднее...

Вставить после каждого нечетного значения массива нулевой элемент
3адан целочисленный массив размера N. Вставить после каждого нечетного значения нулевой элемент. Ребята, помогите :)

Добавить после каждого нечетного элемента массива элемент со значением 0
Постановка задачи Для организации статических массивов с псевдопеременными пределами необходимо объявить массив достаточно большой длины,...

1
 Аватар для anapshy
531 / 272 / 220
Регистрация: 14.11.2016
Сообщений: 1,052
28.06.2017, 17:17
Лучший ответ Сообщение было отмечено Владимир189 как решение

Решение

Владимир189, заблокирован уже ? обидка
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
#include <iostream>
#include <cstdlib>
#include <cmath>
#include <ctime>
int GetRand(const int, const int);
bool IsNumPrime(const int);
void FillArray(int*, const int);
int FindMaxPrimeInArray(const int*, const int);
void InsertMaxPrimeInArray(int*, int&, const int);
double GetAverageArray(const int*, const int);
void PrintArray(const int*, const int);
int main(void)
{
    srand(unsigned(std::time(NULL)));
    int N(0), *arr(NULL);
    std::cout << "Enter the size of array: ";
    std::cin >> N;
    arr = new int[N];
    FillArray(arr, N);
    //**********************************
    std::cout << "\nBefore:" << std::endl;
    PrintArray(arr, N);
    //**********************************
    int max_prime(FindMaxPrimeInArray(arr, N));
    double average_before(GetAverageArray(arr, N)),
           average_after(0);
    InsertMaxPrimeInArray(arr, N, max_prime);
    average_after = GetAverageArray(arr, N);
    //**********************************
    std::cout << "\nAfter:" << std::endl;
    PrintArray(arr, N);
    //**********************************
    std::cout << std::endl
        << "max_prime: " << max_prime << std::endl
        << "average_before: " << average_before << std::endl
        << "average_after:" << average_after << std::endl << std::endl;
    delete[] arr;
    system("pause");
    return 0;
}
 
int GetRand(const int x, const int y)
{
    return -x + rand() % (y * 2 + 1);
}
 
bool IsNumPrime(int num) {
    for (int i = 2; i <= std::sqrt(num); i++)
        if (num % i == 0)
            return false;
    return true;
}
 
void FillArray(int *arr, const int N)
{
    for (int i(0); i < N; i++)
        arr[i] = GetRand(-50, 50);
}
 
int FindMaxPrimeInArray(const int *arr, const int N)
{
    int max(0);
    for (int i(0); i < N; i++)
        if (IsNumPrime(arr[i]))
        {
            max = arr[i];
            for (int j(i + 1); i < N; i++)
                if (IsNumPrime(arr[i]))
                    if (max < arr[i])
                        max = arr[i];
        }
    return max;
}
 
double GetAverageArray(const int *arr, const int N)
{
    double average(0);
    for (int i(0); i < N; i++)
        average += double(arr[i]);
    return average / N;
}
 
void InsertMaxPrimeInArray(int *arr, int &N, const int max_prime)
{
    int new_size(N % 2 ? N / 2 + 1 + N : N / 2 + N),
        *temp = new int[N];
    for (int i(0); i < N; i++)
        temp[i] = arr[i];
    delete[] arr;
    arr = new int[new_size];
    bool flag(true);
    for (int i(0), count(0); i < new_size; i++)
    {
        if (flag)
        {
            arr[i] = temp[count++];
            arr[++i] = max_prime;
            flag = false;
        }
        else
        {
            arr[i] = temp[count++];
            flag = true;
        }
    }
    N = new_size;
    delete[] temp;
}
 
void PrintArray(const int *arr, const int N)
{
    for (int i(0); i < N; i++)
        std::cout << arr[i] << " ";
    std::cout << std::endl;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
28.06.2017, 17:17
Помогаю со студенческими работами здесь

После каждого элемента массива X вставить очередной отрицательный элемент массива Z
Даны два одномерных массива X(n) и Z( n). После каждого элемента массива X вставить очередной отрицательный элемент массива Z. заранее...

После каждого отрицательного элемента массива X вставить очередной элемент массива Z
Даны два одномерных массива X(n) и Z(n). после каждого отрицательного элемента массива X вставить очередной элемент массива Z. если...

Вставить 1 после каждого четного отрицательного числа и 0 после каждого нечетного положительного исходного массива
нужно Вставить 1 после каждого четного отрицательного числа и 0 после каждого нечетного положительного исходного массива. Тестовый пример 4...

Найти минимальный элемент в массиве. Вставить после минимального элемента первый элемент этого массива.
Дан массив целых чисел. Найти минимальный элемент в массиве. Вставить после минимального элемента первый элемент этого массива. Нужно...

В целочисленном массиве после каждого четного числа вставить максимальный элемент массива
В целочисленном массиве X(N) после каждого четного числа вставить максимальный элемент массива. Найти среднее арифметическое элементов...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru