Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [HELP] помогите написать прогу в с++, массив,печать слов в нем... 
:(
    Опции темы
dennioushen
  Дата 22.12.2007, 00:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 12.9.2007
Где: москва

Репутация: нет
Всего: нет



ЗАДАЧА: 
   Задан массив слов.напечатать те слова этого массива, которые встречаются в этом массиве только один раз.


мне препод типа написсал чего и как делать:

     str={abc_gg_xxxxxxxxxx_ff_z_kkkb}

 1.сформировать массив слов a[k] из заданной строки str[n]
 2.определить длину каждого слова в массиве a[k] и заданногго эти длины в массиве b[k]
                                                   b[k]={3;2;7;2;1;3}
                                                              i=0 i=1

 3.определить min и max и их место

                    max=7         min=1
                      i=2              i=4

-ну мне этот пример препода ни о чем не сказал((

-если кто может помогите...   

Это сообщение отредактировал(а) dennioushen - 22.12.2007, 00:43
PM MAIL WWW   Вверх
bsa
Дата 22.12.2007, 18:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Как задан "массив слов" - в виде массива строк или в виде строки с пробелами разделителями? То, что ты привел в качестве примера, не является допустимым синтаксисом. Хотя, судя по контексту, у тебя второй вариант.
Определять размеры слов и min с max'ом вообще не вижу смысла.
Раз у тебя C++, то делать можно так:
Код
#include <map>
#include <string>
#include <sstream>
#include <iostream>

const char text[] = "some simple text for example simple for example";

int main()
{
      std::stringstream str(text); //создаем поток из строки
      typedef std::map<std::string, int> StringMap; //объявляем новый тип (строка и количество), для упрощения в дальнейшего текста
      StringMap wordList; //определяем список слов
      while(str.good()) { //пока поток не закончился
              std::string word;
              str >> word; //читаем из него слова в переменную word
              if ( word.size() ) //если считаное слово имеет ненулевую длину
                    ++wordList[word]; //увеличиваем соответствующий ему счетчик
      }
      for(StringMap::const_iterator i = wordList.begin(); i != wordList.end(); ++i)
          if (i->second == 1) //выводим на консоль только те слова, чьи счетчики равны 1
             std::cout << i->first << std::endl;
      return 0;
}

PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0834 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.