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

Разделить все положительные элементы массива на его макс. или мин. элемент

03.11.2017, 20:05. Показов 4423. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, написал программу однако не могу исправить ошибку в деление элементов, буду благодарен, если исправите. Минимальный и максимальный элемент нахожу, однако при деление выдает 1 на всех элементах, пытался 2 способами однако все равно выводит 1. Нужно вывести каждый элемент массива, деленный на выбранный элемент:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
    switch (num) {
    case 1:
        cout << "Элементы массива деленные на мин.элемент: ";
        for (int i = 0; i < n; i++) {
            c[i] /= min;
            delmin = min;
            cout << delmin << ", ";
        }
        break;
    case 2:
        cout << "Элементы массива деленные на макс.элемент: ";
        for (int i = 0; i < n; i++) {
            delmax = c[i] / max;
        }
        cout << delmax << ", ";
        break;
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.11.2017, 20:05
Ответы с готовыми решениями:

Если разница между макс. и мин. элементами массива >20, то все элементы / 2, иначе все элементы +10
Если в массиве разница между максимальным и минимальным значением больше 20, то все элементы уменьшить вдвое, иначе - все элементы...

Разделить все элементы массива на его первый элемент
Задание. Сделать это задание: Дан массив целых чисел. а) Разделить все элементы массива на его первый элемент; б) увеличить все элементы...

Разделить все элементы массива на его максимальный элемент
Ребят, помогите пожалуйста.:boredom: 1.разделить все элементы массива на максимальный элемент этого массива.

5
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38203 / 21135 / 4310
Регистрация: 12.02.2012
Сообщений: 34,741
Записей в блоге: 14
03.11.2017, 20:22
А где поиск максимума и минимума?
1
0 / 0 / 0
Регистрация: 08.09.2017
Сообщений: 40
03.11.2017, 20:26  [ТС]
Catstail,
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
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
using namespace std;
int main()
{
    setlocale(LC_CTYPE, "rus");
    const int n = 15;
    int c[n];
    cout << "Введите элементы массива:\n";
    for (int i = 0; i < n; i++) {
        cout << "c[" << i << "]= ";
        cin >> c[i];
    }
    cout << "\n\n";
    cout << "Ваш массив: ";
    for (int i = 0; i < n; i++) {
        cout<<c[i] << ", ";
    }
    cout << "\n";
    int max = c[0];
    int min = c[0];
    for (int i = 0; i < n; i++) {
        if (min > c[i]) {
            min = c[i];
        }
        if (max < c[i]) {
            max = c[i];
        }
    }
    cout << "Максимальный элемент:" << max << "\n";
    cout << "Минимальный элемент: " << min << "\n";
    int num;
    float delmin, delmax;
    cout << "Поделить на мин.элемент(Введите 1);\n Поделить на макс.элемент (Введите 2);\nВвод: ";
    cin >> num;
    switch (num) {
    case 1:
        cout << "Элементы массива деленные на мин.элемент: ";
        for (int i = 0; i < n; i++) {
            c[i] /= min;
            delmin = min;
            cout << delmin << ", ";
        }
        break;
    case 2:
        cout << "Элементы массива деленные на макс.элемент: ";
        for (int i = 0; i < n; i++) {
            delmax = c[i] / max;
        }
        cout << delmax << ", ";
        break;
    default:
        cout << "Вы должны ввести число 1 или 2! Error!\n";
    }
    return 0;
}
0
Модератор
 Аватар для Curry
5158 / 3492 / 536
Регистрация: 01.06.2013
Сообщений: 7,587
Записей в блоге: 9
03.11.2017, 20:39
Ну, раз min max уже нашли, то
C++
1
2
3
4
5
6
7
8
9
10
    switch (num) {
    case 1:
        cout << "Элементы массива деленные на мин.элемент: ";
        arrayOut(c,n,min);
        break;
    case 2:
        cout << "Элементы массива деленные на макс.элемент: ";
        arrayOut(c,n,max);
        break;
    }
И вспомогательная функция
C++
1
2
3
4
5
6
7
8
template<class T> void arrayOut(T* c, int sz, T divizor)
{
        for (int i = 0; i < sz; i++) {
            if(i>0)
                cout << ", ";
            cout << c[i] / divizor;
        }
}
Добавлено через 2 минуты
Gnomee, в 23-ей строчке вашего кода можно for (int i = 1; i < n; i++)
1
0 / 0 / 0
Регистрация: 08.09.2017
Сообщений: 40
03.11.2017, 20:44  [ТС]
KolodeznyDiver, А как это преобразить без функции? Ибо не полностью понимаю что значит данный строка:
C++
1
template<class T> void arrayOut(T* c, int sz, T divizor)
0
Модератор
 Аватар для Curry
5158 / 3492 / 536
Регистрация: 01.06.2013
Сообщений: 7,587
Записей в блоге: 9
03.11.2017, 20:50
Лучший ответ Сообщение было отмечено Gnomee как решение

Решение

Gnomee, я, когда это писал, не видел ещё вашего второго кода и не знал какой тип у массива с.
Для int будет
C++
1
2
3
4
5
6
7
8
void arrayOut(int* c, int sz, int divizor)
{
        for (int i = 0; i < sz; i++) {
            if(i>0)
                cout << ", ";
            cout << c[i] / divizor;
        }
}
Можете, конечно, продублировать код из функции в обеих ветках switch (num), но лучше повторяющийся код выносить в отдельные функции, как я предложил.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.11.2017, 20:50
Помогаю со студенческими работами здесь

Разделить все отрицательные элементы массива на его максимальный элемент
Помогите решить задачу?пожалуйста. В массиве из 10 чисел поделить все отрицательные элементы на максимальный элемент массива.

Дан массив V (N,M) . Разделить все его положительные элементы, расположенные выше главной диагонали, на среднее значение элементов массива
Помогите решить . Дан массив V(N,M). Разделить все его положительные элементы, расположенные выше главной диагонали, на среднее значение...

Заменить все положительные элементы на наименьший элемент массива, удалив его при этом из массива
Для произвольно выбранной последовательности целых чисел, в которой не более 30 элементов, выполнить следующее задание: ввести эти числа в...

Дан массив размера 10. Переставить в обратном порядке элементы массива, расположенные между его мин и макс элементами
Приветствую Помогите с задачей пожалуйста Дан массив размера 10. Переставить в обратном порядке элементы массива, расположенные...

Дан массив размера 10. Переставить в обратном порядке элементы массива, расположенные между его мин. и макс. значениями
Здравствуйте, помогите пожалуйста.:resent: Задача: Дан массив размера 10 Переставить в обратном порядке элементы массива, расположенные...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru