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

Найти в массиве наименьший элемент, не имеющий повторений - C++

Восстановить пароль Регистрация
 
Valya
0 / 0 / 0
Регистрация: 20.10.2012
Сообщений: 14
28.10.2012, 22:43     Найти в массиве наименьший элемент, не имеющий повторений #1
написала программу как найти минимальный элемент, а мне нужно записать что бы программа искала минимальный элемент не имеющий повторений. Помогите пожалуйста написать.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream> 
using namespace std; 
 
int main() 
int n; // n - количество элементов в массиве 
int a[100]; // a - массив целых чисел, максимальный размер 100 элементов 
 
cin >> n; 
for (int i = 0; i < n; i++) // ввод массива 
 cin >> a; 
 
int m = a[0]; 
 
for (int i = 0; i < n; i++) 
 if (a < m) 
 m = a; 
 
cout << m; // вывод минимального значения 
return 0; 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.10.2012, 22:43     Найти в массиве наименьший элемент, не имеющий повторений
Посмотрите здесь:

В массиве найти наибольший и наименьший элемент C++
C++ Что-то не хочет пахать :( | Даны два целочисленных массива К(m) и L(n). Найти наибольший элемент массива K, не имеющий себе равных в массиве L.
В массиве из 25 действительных чисел найти наименьший элемент и поменять его местами с первым элементом(Borland C++) C++
C++ Задача (язык С + +). В массиве из 25 действительных чисел найти наименьший элемент и поменять его местами с первым элементом
C++ В одномерном массиве найти наибольший элемент из эл-тов, имеющий четный номер.Определить, является ли он единственным.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
I.M.
 Аватар для I.M.
564 / 547 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
28.10.2012, 22:53     Найти в массиве наименьший элемент, не имеющий повторений #2
Максимально просто и понятно (наверное) - это сделать 3 функции
1. находит минимальный элемент (она у вас уже есть)
2. находит минимальный элемент больше некоторого K
3. находит количество элементов в массиве, равное числу К
Valya
0 / 0 / 0
Регистрация: 20.10.2012
Сообщений: 14
28.10.2012, 23:07  [ТС]     Найти в массиве наименьший элемент, не имеющий повторений #3
извините, а можно по подробнее написать, просто я не совсем понимаю как это сделать.

Добавлено через 3 минуты
Цитата Сообщение от I.M. Посмотреть сообщение
2. находит минимальный элемент больше некоторого K
что значит найти "минимальный элемент больше некоторого K" если мы уже и так нашли минимальный, который ни как не будет больше К
I.M.
 Аватар для I.M.
564 / 547 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
28.10.2012, 23:14     Найти в массиве наименьший элемент, не имеющий повторений #4
минимальный элемент больше некоторого К

Например, есть массив 5 3 7 2 1 1
К = 2
ищем минимальный элемент больше 2. Это 5 3 7 2 1 1
Valya
0 / 0 / 0
Регистрация: 20.10.2012
Сообщений: 14
28.10.2012, 23:20  [ТС]     Найти в массиве наименьший элемент, не имеющий повторений #5
Цитата Сообщение от I.M. Посмотреть сообщение
3. находит количество элементов в массиве, равное числу К
а это тогда зачем, если мне нужен всего лишь 1 минимальный элемент?
I.M.
 Аватар для I.M.
564 / 547 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
28.10.2012, 23:33     Найти в массиве наименьший элемент, не имеющий повторений #6
Вам же нужен не просто минимальный элемент, а минимальный элемент, не имеющий повторений
Как я это понял - для массива 5 3 7 2 1 1
таким элементом будет 5 3 7 2 1 1
Valya
0 / 0 / 0
Регистрация: 20.10.2012
Сообщений: 14
28.10.2012, 23:50  [ТС]     Найти в массиве наименьший элемент, не имеющий повторений #7
Цитата Сообщение от I.M. Посмотреть сообщение
Вам же нужен не просто минимальный элемент, а минимальный элемент, не имеющий повторений
Как я это понял - для массива 5 3 7 2 1 1
таким элементом будет 5 3 7 2 1 1
я это тоже поняла, но и проблема в том что я не могу это записать на языке С++
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.10.2012, 05:11     Найти в массиве наименьший элемент, не имеющий повторений
Еще ссылки по теме:

C++ В заданном массиве A(N) все элементы которого попарно различны, найти наименьший элемент из положительных
В массиве из 4 строк и 3 столбцов найти наименьший элемент каждого столбца C++
Найти наименьший элемент в массиве C++

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

Или воспользуйтесь поиском по форуму:
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
29.10.2012, 05:11     Найти в массиве наименьший элемент, не имеющий повторений #8
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
#include <iostream> 
using namespace std; 
 
int main() 
{
int n, i_m = -1, t, i, j; // n - количество элементов в массиве 
int a[100]; // a - массив целых чисел, максимальный размер 100 элементов 
 
cin >> n; 
for (i = 0; i < n; i++) // ввод массива 
 cin >> a[i]; 
 
for (i = 0; i < n; i++) 
{
    t=0;
    for (j = 0; j < n; j++)
        if(a[i]==a[j])
            t++;
    if(t==1)
    {
        if(i_m=-1)
            i_m=i;
        else
            if(a[i_m]>a[i])
                i_m=i;
    }
 
}
 if (i_m==-1)
     cout<<"NO"<<endl;// это случай когда в массиве нет неповторяющихся элементов
 else
     cout<<a[i_m]<<endl;// вывод минимального значения  
 
return 0; 
}
Yandex
Объявления
29.10.2012, 05:11     Найти в массиве наименьший элемент, не имеющий повторений
Ответ Создать тему
Опции темы

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