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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> помогите разобраться с кодом 
:(
    Опции темы
pharrell
Дата 29.6.2006, 12:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 101
Регистрация: 27.6.2006

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



Можно это все как то попроще написать,а то я никак не разберусь.
 template<class Stream>
    unsigned int find_deleted_string(Stream& stream)
{
    string str_;
    map<unsigned char,unsigned int> map_;
    unsigned int line_=0, count_=0, old_line_=0;
    while (!stream.eof())
    {
        unsigned int old_=0;
        getline(stream,str_);
        for (unsigned char i=0; i<256; ++i) map_[i]=0;
        for (string::iterator i=str_.begin(); i!=str_.end(); ++i) map_[*i]++;
        for (map<unsigned char,unsigned int>::iterator i=map_.begin(); i!=map_.end(); ++i)
            if ((*i).second) ++old_;
        if (old_>count_) line_=old_line_, count_=old_;
        str_.clear();
        ++old_line_;
    }
    return line_;
}

 
 
 
PM MAIL   Вверх
Daevaorn
Дата 29.6.2006, 12:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



pharrell, 
Одно можно сразу сказать точно: map тут не нужен совсем - от него нет смысла 
PM MAIL WWW   Вверх
pharrell
Дата 29.6.2006, 12:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 101
Регистрация: 27.6.2006

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



А вообще как более просто можно его переписать? 
PM MAIL   Вверх
Xenon
Дата 29.6.2006, 12:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1529
Регистрация: 12.4.2006

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



Дык там, где тебе MAKCim ответил, там у него и спрашивай. По ходу дела он над тобой издевается  smile  


--------------------
user posted image  
PM MAIL   Вверх
MAKCim
Дата 29.6.2006, 12:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

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



Цитата

А вообще как более просто можно его переписать?  

можно (чистый С) находит количество различных символов в строке
Код

size_t count(const char* string)
{
    char buffer[256]={0};
    size_t size=strlen(string), i=0, count=0, j=256;
    while (i<size) ++buffer[*(string+i)];
    while (j)
        if (buffer[--j]) ++count;
    return count;
}


Добавлено @ 12:46 
Цитата

По ходу дела он над тобой издевается

не, я порядочный  smile  


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
pharrell
Дата 29.6.2006, 13:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 101
Регистрация: 27.6.2006

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



Спасибо большое!!!!!! 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

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

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


 




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


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

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