Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.04.2012, 14:58   #1
alljustforfun
 
Регистрация: 16.04.2012
Сообщений: 6
По умолчанию Сортировка и вывод строкового масива.(DevC++)

вообщем задача стоит так. Есть масив string[] любой размерности. нужно через пробел в string n записать те елементы массива которые встречаютса по крайней мере 2 раза(без повторений).
Мне нужен только сам кусочек. Вот мой вариант при котом консоль выдает ошибку и закрываетса:
Код:
 
string slova[10];
string temp1;
for(int z=0;z<10;z++)
 {
    for(int x=1; x<10;x++)
      {
             if(slova[z]==slova[x])
             {
                                   
                   for(int c=z-1;c>0;c--)
                   {
                        if(slova[z]==slova[c])
                        {
                          l++;
                             
                         }  
                         if(l=0)
                         {
                           temp1+=slova[z]+' ';       
                         }    
                   }
                   
              }
             
       } 
 }
(все переменные и библиотеки описаны више т.к. это лиш кусок програмы).
alljustforfun вне форума Ответить с цитированием
Старый 16.04.2012, 15:24   #2
alljustforfun
 
Регистрация: 16.04.2012
Сообщений: 6
По умолчанию

можна ли упростить задачу так: вывести повторяющиеся елементы масива?
alljustforfun вне форума Ответить с цитированием
Старый 16.04.2012, 15:30   #3
Rififi
Старожил
 
Регистрация: 19.08.2009
Сообщений: 2,119
По умолчанию

елементы массива которые встречаютса по крайней мере 2 раза

Код:
std::map<std::string, size_t> Map;
Map map;

for (size_t i=0; i<sizeof(slova)/sizeof(slova[0]); i++)
    ++map[slova[i]];

for (Map::const_iterator it = map.begin(); it != map.end(); ++it)
    if (it->second == 2)
        std::cout << it->first << std::endl;
Rififi вне форума Ответить с цитированием
Старый 16.04.2012, 15:41   #4
alljustforfun
 
Регистрация: 16.04.2012
Сообщений: 6
По умолчанию

а можна както без списка или как это называетса
Код:
std::map<std::string, size_t> Map;
Map map;
. только циклы, условия и т.д.?
alljustforfun вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сортировка Шейкера для строкового типа данных Kovax Паскаль, Turbo Pascal, PascalABC.NET 3 07.05.2011 17:15
Обработка и сортировка 2 мерного динамического масива FatalLight Общие вопросы C/C++ 13 07.09.2010 12:03
Сортировка строкового массива Vikenty Помощь студентам 2 24.05.2010 00:06
Сортировка масива lhOsvald Общие вопросы C/C++ 21 02.05.2008 00:28