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

Найти произведение элементов массива

23.04.2019, 23:03. Показов 1169. Ответов 4

Студворк — интернет-сервис помощи студентам
Найти минимальное произведение пары симметричных относительно середины массива элементов.

Создать шаблон класса Массив с параметрами:
- Т -тип элементов массива
- n-количество элементов массива

не умею сортировать массив симметрично, относительно средины.
кто знает как сделать, пожалуйста, помогите!

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
#include <iostream>
 
using namespace std;
 
template<typename T>
class Array {
    int cnt;
    T* pArr;
public:
    Array(int s) {
        cnt = s;
        pArr = new T[cnt];
    }
 
    void initArr();
    void outArr();
 
};
template <typename T>
void Array<T>::outArr() {
    for (int i = 0; i < cnt; ++i)
        cout << pArr[i] << "  ";
    cout << endl;
}
 
template<typename T>
void Array<T>::initArr() {
    for (int i = 0; i < cnt; ++i)
        pArr[i] = rand() % 32;
}
 
 
 
int main()
{
    int a;
    cout << "Enter n:\t";
    cin >> a;
    Array<int> ar1(a);
    Array<double> ar2(a);
    ar1.initArr();
    ar1.outArr();
 
    ar2.initArr();
    ar2.outArr();
    cout << "Hello World!\n";
}
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.04.2019, 23:03
Ответы с готовыми решениями:

Найти отдельно произведение положительных элементов и произведение отрицательных элементов массива
Ввести массив. Найти отдельно произведение положительных элементов и произведение отрицательных элементов.

Найти максимальный элемент массива; найти произведение элементов массива, удовлетворяющих условию
В одномерном массиве, состоящим из n целых элементов, вычислить: Номер максимального элемента массива; произведение элементов массива,...

в массиве . найти произведение ненулевых элементов, количество элементов, превышающих значение среднего арифметического элементов массива
В массиве Х(N) найти произведение ненулевых элементов, количество элементов, превышающих значение среднего арифметического элементов...

4
 Аватар для zayats80888
6352 / 3523 / 1428
Регистрация: 07.02.2019
Сообщений: 8,995
23.04.2019, 23:10
Цитата Сообщение от VladIslav_230 Посмотреть сообщение
не умею сортировать массив симметрично
А еще не слышали про конструкторы по умолчанию, копирования, операторы присваивания и деструкторы.
И в задании ни слова про сортировку.
1
0 / 0 / 0
Регистрация: 23.04.2019
Сообщений: 12
23.04.2019, 23:20  [ТС]
Цитата Сообщение от zayats80888 Посмотреть сообщение
А еще не слышали про конструкторы по умолчанию, копирования, операторы присваивания и деструкторы.
И в задании ни слова про сортировку.
"симметричных относительно середины массива элементов" - это разве не говорит о том, что его сначала так отсортировать надо?
конструкторы то здесь причём?
0
863 / 513 / 215
Регистрация: 19.01.2019
Сообщений: 1,216
23.04.2019, 23:41
Лучший ответ Сообщение было отмечено VladIslav_230 как решение

Решение

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
template<typename T>
class Array
{
private:
    int n;
    T* arr;
 
public:
    ~Array() = default;
    Array(T* inp, int len) :
    n(len),
    arr(inp)
    {}
 
 
    T findMinSymProd() {
        T* lhs = arr;
        T* rhs = arr + n - 1;
        T minProd = *lhs * *rhs;
        
        while (lhs < rhs) {
            if (*lhs * *rhs < minProd) {
                minProd = *lhs * *rhs;
            }
            ++lhs;
            --rhs;
        }
 
        return minProd;
    }
};
 
 
 
 
int main()
{
    int arr1[] = { 9, 7, 5, 3, 1, 0, 8, 6, 4, 2 };
    float arr2[] = { 2.2, 4.4, 6.6, 8.8, 1.1, 3.3, 5.5, 7.7, 9.9 };
 
    Array<int> test1(arr1, std::size(arr1));
    int result1 = test1.findMinSymProd();
 
    Array<float> test2(arr2, std::size(arr2));
    float result2 = test2.findMinSymProd();
 
    std::cout << "Test1: " << result1 << '\n';
    std::cout << "Test2: " << result2 << '\n';
 
 
    system("pause");
    return 0;
}
Есть пара лишних движений, не особо влияющих на результат.
Про сортировку в тз ничего не сказано.
1
 Аватар для art_artemios
35 / 23 / 7
Регистрация: 23.12.2018
Сообщений: 101
23.04.2019, 23:47
Владислав, тебе не нужно сортировать массив. Надо лишь найти мин. произведение элементов массива, так скажем, "равноудаленных" от крайних элементов массива. Сечёшь?
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.04.2019, 23:47
Помогаю со студенческими работами здесь

в массиве . найти произведение нулевых элементов, количество элементов, превышающих значение среднего арифметического элементов массива
В массиве Х(N) найти произведение нулевых элементов, количество элементов, превышающих значение среднего арифметического элементов массива....

Массивы (найти номер максимального элемента массива, произведение элементов массива)
В одномерном массиве, состоящем из п целых элементов, 1) номер максимального элемента массива;I 2) произведение элементов массива,...

Найти наибольшее произведение пары элементов массива (при условии, что произведение кратно 8, но не кратно 24)
Помогите пожалуйста) дали задачу, найти наибольшее произведение пары элементов массива,при условии,что произведение кратна 8,но не кратна...

Найти произведение ненулевых элементов массива и подсчитать число нулевых элементов
Дан массив чисел c1,c2,...,c20,среди которых есть нулевые элементы. Найти произведение ненулевых элементов массива {c} и подсчитать число...

Найти максимальный элемент из элементов массива, не кратных числу 4, и произведение ненулевых элементов
Найти максимальный элемент из элементов массива, не кратных числу 4, и произведение ненулевых элементов. Добрый вечер. Объясните...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга, Ты же видел моря и метели. Как сменялись короны и стяги, Как эпохи стрелою летели. - Этот мир — это крылья и горы, Снег и пламя, любовь и тревоги, И бескрайние. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru