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

Найти минимальный элемент массива, умножить на него все отрицательные элементы, стоящие слева

11.09.2016, 18:13. Показов 4754. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вообщем условие такое: Среди отрицательных элементов массива найти минимальный, умножить на него все отрицательные элементы стоящие левее от минимального.

Я только нашел минимальный элемент, не пойму как найти все отрицательные элементы левее минимального.
Это наверное как то по индексу нужно? Помогите пожалуйста!
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
void func(int mas[], int size)
{
    int min=0;
    for (int i=0; i<size; i++)
    {
        if(mas[i]<min)
        {
            min=mas[i];
        }
    }
    cout<<"Минимальны элемент массива: "<<min<<endl;
}
 
int main()
{
    setlocale(LC_ALL, "Russian");
    srand(time (NULL));
 
    const int size = 15;
    int mas[size];
    for (int i=0; i<size; i++)
    {
        mas[i] = rand() % 99 - 30;
        cout<<mas[i]<<" ";
    }
    cout<<endl;
    func(mas,size);
    
    
 
    system("pause");
    return 0;
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.09.2016, 18:13
Ответы с готовыми решениями:

Найти минимальный элемент в массиве Y (25). Умножить на него все ненулевые элементы.
Найти минимальный элемент в массиве Y (25). Умножить на него все ненулевые элементы. Распечатать преобразованный массив Y.

Найти наибольшее значение массива и умножить на него все элементы
Составить программы. C++. 1. Заданы два массива – А(5) и В(5). В каждом из массивов найти наибольшее значение и умножить на него все...

Умножить отрицательные элементы столбцов с нечетными номерами на минимальный элемент матрицы
Доброго времени суток,народ;D Помогите пожалуйста решить данную задачу,используя подпрограмму(это обязательно):help: Заранее всем...

4
192 / 128 / 52
Регистрация: 19.01.2010
Сообщений: 518
11.09.2016, 18:59
Изначально минимальным лучше брать первый элемент массива, т.к мало ли в массиве будут числа от 10 до 100, тогда 0 так и останется минимальным, хотя в массиве такого числа нет.
Цитата Сообщение от OlegSTEP Посмотреть сообщение
Это наверное как то по индексу нужно?
да. Там, где запоминаешь минимальное число, запоминай и его индекс (напр.как min_index). Потом делай цикл от нуля до min_index, в котором сравнивай элементы массива с нулем
0
0 / 0 / 0
Регистрация: 11.09.2016
Сообщений: 12
11.09.2016, 19:07  [ТС]
У меня почему то умножать не хочет.
А вот сумму узнать так легко.
Как то так сделал:
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
void func(int mas[], int size)
{
    int min=0;
    int minI;
    int sum=0;
    for (int i=0; i<size; i++)
    {
        if(mas[i]<min)
        {
            min=mas[i];
            minI=i;
        }
    }
    for (int i=0; i<minI; i++)
    {
            if(mas[i]<0)
                sum+=mas[i];
    }
    cout<<"Минимальны элемент массива: "<<min<<endl;
    cout<<"Индекс минимального элемента: "<<minI+1<<endl; // +1 потому что считает с 0
    cout<<"Сумма всех отрицательных элементов левее от минимального: "<<sum<<endl;
 
}
 
int main()
{
    setlocale(LC_ALL, "Russian");
    srand(time (NULL));
 
    const int size = 15;
    int mas[size];
    for (int i=0; i<size; i++)
    {
        mas[i] = rand() % 99 - 50;
        cout<<mas[i]<<" ";
    }
    cout<<endl;
    func(mas,size);
    
    
 
    system("pause");
    return 0;
}
0
Любитель чаепитий
 Аватар для GbaLog-
3745 / 1801 / 566
Регистрация: 24.08.2014
Сообщений: 6,020
Записей в блоге: 1
11.09.2016, 19:31
Selot, А зачем запоминать минимальный элемент массива И индекс, можно просто индекс запомнить.
А потом, условие внимательно прочтите, человеку нужно минимальное отрицательное, поэтому можно смело min приравнять к 0.

OlegSTEP,
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
#include <algorithm>
#include <array>
#include <iostream>
#include <clocale>
#include <random>
#include <ctime>
///////////////////////////////////////////////////////////
int main()
{
    std::array<int, 15> arr;
    std::mt19937 gen( std::time( nullptr ) );
    std::uniform_int_distribution<> dist( -100, 100 );
    for( auto& i : arr )
    {
        i = dist( gen );
        std::cout << i << std::endl;
    }
    
    auto min = std::min_element( arr.begin(), arr.end());
              
    std::cout << "Min: " << *min << std::endl;
    
    std::for_each( 
        arr.begin(), 
        min,
        [&min] ( int& _a )
        {
            if( _a < 0 )
            {
                _a *= *min;
            }
        } 
    );
    
    for( const auto& i : arr )
    {
        std::cout << i << std::endl;
    }
}
0
192 / 128 / 52
Регистрация: 19.01.2010
Сообщений: 518
11.09.2016, 19:40
как я понял из задания:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
cout << "исходный массив до minI-элемента:" << endl;
for(int i = 0; i < minI; ++i)
     cout << mas[i] << "  ";
 
for(int i = 0; i < minI; ++i)
{
     if(mas[i] < 0)
          mas[i] *= min;
}
 
cout << "исходный массив до minI-элемента после умножения:" << endl;
for(int i = 0; i < minI; ++i)
     cout << mas[i] << "  ";
Добавлено через 1 минуту
Цитата Сообщение от GbaLog- Посмотреть сообщение
А потом, условие внимательно прочтите, человеку нужно минимальное отрицательное, поэтому можно смело min приравнять к 0.
Да, не внимательно прочел
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
11.09.2016, 19:40
Помогаю со студенческими работами здесь

Дана матрица А(7,4) Вывести все отрицательные элементы этой матрицы. Найти минимальный по модулю элемент
Привет славные форумчани.. Тема программы потоковые файлы... Задача состоит в написание текста на c++ с классами. Дана матрица А(7,4)...

В заданной матрице найти минимальный элемент и заменить на него все элементы в той же строке и столбце
Дана квадратная матрица А порядка n. Составить программу, которая находит минимальный элемент и все элементы, расположенные в одной строке...

Найти столбец содержащий минимальный элемент. Умножить элементы данного столбца на максимальный элемент
30. В матрице А(8,8) найти столбец содержащий минимальный элемент. Умножить элементы данного столбца на максимальный элемент.

Все элементы массива после минимального умножить на минимальный
все элементы массива А=(а1,а2...аn), слейдущие за элементом,которые равны min(a1,a2,...an) , умножить на min(a1,a2,...an), вывести на экран...

В матрице все элементы, стоящие выше максимального элемента, заменить на минимальный элемент
Помогите решить задачу!!!! В массиве все элементы, стоящие выше максимального элемента, заменить на минимальный элемент. заранее...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru