Форум программистов, компьютерный форум CyberForum.ru

Удаление всех минимальных элементов из массива - C++

Восстановить пароль Регистрация
 
sober_friday
 Аватар для sober_friday
1 / 1 / 0
Регистрация: 11.11.2013
Сообщений: 15
23.11.2014, 11:09     Удаление всех минимальных элементов из массива #1
Прошу, помогите исправить функцию.
Есть задача: удалить из массива все элементы, равные минимальному элементу массива. (Описать соответствующую функцию)
И проблема: вместо удаления минимальных элементов, удаляются элементы с нечетными номерами. Кажется, алгоритм правильный. Все перерыла и все перепробовала уже, в итоге все равно выводится ересь.
Вот моя функция:
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
void delete_min(int *mas,int n)
    /*функция удаления минимальных элементов*/ 
{
    int min,i,j; 
    min=mas[1];
    for (i=2; i<=n; i++) //нахождение минимального элемента массива
        if (mas[i]<min) min=mas[i];
    for (i=1; i<=n; i++) 
        if (mas[i]=min) 
                for (j=i; j<n; j++) mas[j]=mas[j+1];
    for (int i=1; i<=n; i++) cout<<mas[i]<<" ";
}
Рассуждение: с элемента, равного минимальному, переприсваиваю каждому элементу значение следующего - выходит так, что минимальный удалится, и на его месте будет стоять следующий. В конце последний элемент будет дублироваться столько раз, сколько встретился минимальный.
И вот еще:
Миниатюры
Удаление всех минимальных элементов из массива  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.11.2014, 11:09     Удаление всех минимальных элементов из массива
Посмотрите здесь:

C++ Вывести на экран номера всех минимальных элементов одномерного массива.
Получить первые n-минимальных элементов массива,используя указатели C++
Удаление из массива всех элементов, встречающихся ровно два раза C++
Удаление четных элементов массива,больших среднего арифметического всех элементов массива C++
C++ Посчитать количество минимальных элементов целочисленного массива
C++ Вычислить величину Z, которая равняется сумме минимальных элементов массивов, разделенной на двойное произведение индексов минимальных элементов
Вывести на экран номера всех минимальных элементов C++
C++ Найти среднее арифметическое пяти минимальных элементов массива

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
sober_friday
 Аватар для sober_friday
1 / 1 / 0
Регистрация: 11.11.2013
Сообщений: 15
23.11.2014, 11:53  [ТС]     Удаление всех минимальных элементов из массива #2
Ошибка найдена, прошу закрыть тему.
Вся проблема в if (mas[ i ]=min) - вместо = должен быть знак ==
Никак не привыкну к синтаксису.
Yandex
Объявления
23.11.2014, 11:53     Удаление всех минимальных элементов из массива
Ответ Создать тему
Опции темы

Текущее время: 05:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru