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

Строки определение максимального количества пробелов между словами - C++

Восстановить пароль Регистрация
 
Wolverine_
0 / 0 / 0
Регистрация: 03.02.2013
Сообщений: 101
17.04.2013, 18:25     Строки определение максимального количества пробелов между словами #1
Слабо знаю строки в с++ . Помогите пожалуйста сделать эту задачу:
Расстояние между двумя словами равной длины - это количество позиций, в которых различаются эти слова. В ЗАДАННОМ предложении найти пару наиболее удаленных слов ЗАДАННОЙ длины.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.04.2013, 18:25     Строки определение максимального количества пробелов между словами
Посмотрите здесь:

C++ пользователь вводит строчку,а программа выводит количество пробелов между словами в строке.
C++ удаление пробелов между словами и буквами
Разработать функцию, которая сравнивает две строки, игнорируя количество пробелов между словами C++
C++ Разработать функцию, которая сравнивает две строки, игнорируя количество пробелов между словами.
Увеличить в два раза количество пробелов между словами C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
yoghurt92
373 / 344 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
17.04.2013, 21:04     Строки определение максимального количества пробелов между словами #2
Wolverine_,

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
36
37
38
39
40
#include <iostream>
#include <algorithm>
#include <vector>
#include <string>
#include <iterator>
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    int max(0), number(0);
    char delim(' ');
    string str("jhgfd dfhlkfdg  dfkghl   glkfg  khdg");
 
    string::size_type pos1(0), pos2(0);
 
    pos1 = str.find_first_of(delim, pos1);
        
    if(pos1 != string::npos){
        pos2 = str.find_first_not_of(delim, pos1);
        max = pos2 - pos1;
 
        while(pos2 != string::npos){
            pos1 = pos2;
            pos1 = str.find_first_of(delim, pos1);
        
            if(pos1 != string::npos){
                pos2 = str.find_first_not_of(delim, pos1);
                number = pos2 - pos1;
            }
            else
                break;
 
            if(max < number)
                max = number;
        }
    }
 
    cout << "Number: " << max << "\n\n";
    return 0;
}
Wolverine_
0 / 0 / 0
Регистрация: 03.02.2013
Сообщений: 101
18.04.2013, 03:16  [ТС]     Строки определение максимального количества пробелов между словами #3
А в какой среде программирования вы писали?( хочу переделать просто я пишу в turbo c++)
yoghurt92
373 / 344 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
18.04.2013, 09:03     Строки определение максимального количества пробелов между словами #4
Wolverine_, VS 2008
DiffEreD
 Аватар для DiffEreD
1420 / 757 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
18.04.2013, 10:23     Строки определение максимального количества пробелов между словами #5
Для разнообразия:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
#include <boost/algorithm/string.hpp>
 
int main()
{    
    std::string str = "jhgfd      dfhlkfdg  dfkghl     glkfg  khdg";
    std::cout<<str<<"\n";
    std::vector<std::string> spaces;
    boost::split(spaces, str, boost::algorithm::is_graph(), boost::token_compress_on);
    std::cout<<"Max spaces is "
             <<(*std::max_element(spaces.begin(), spaces.end(), 
                [](const std::string& s1, const std::string& s2)
                {return s1.size()<s2.size();})).size();
    std::cout<<"\n";
    
    return 0;
}
yoghurt92
373 / 344 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
18.04.2013, 10:59     Строки определение максимального количества пробелов между словами #6
yuron_477, я boost не знаю, но правильно ли я понял, ваш программа создает вектор из пробелов, а потом просто определяет большее кол-во пробелов?
DiffEreD
 Аватар для DiffEreD
1420 / 757 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
18.04.2013, 11:10     Строки определение максимального количества пробелов между словами #7
Да, верно.
Wolverine_
0 / 0 / 0
Регистрация: 03.02.2013
Сообщений: 101
18.04.2013, 11:43  [ТС]     Строки определение максимального количества пробелов между словами #8
А такие функции есть в borland c++ ?
chizz
 Аватар для chizz
975 / 489 / 54
Регистрация: 19.03.2013
Сообщений: 3,047
Записей в блоге: 18
Завершенные тесты: 1
18.04.2013, 11:43     Строки определение максимального количества пробелов между словами #9
Цитата Сообщение от Wolverine_ Посмотреть сообщение
Расстояние между двумя словами равной длины - это количество позиций, в которых различаются эти слова.
Что-то мне кажется, что пробелы тут совершенно не при чем..
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.04.2013, 13:59     Строки определение максимального количества пробелов между словами
Еще ссылки по теме:

Массивы. Определение максимального целого числа из произвольного количества введенных значений C++
C++ Отсортировать слова по алфавиту в массиве char. Между словами по несколько пробелов
C++ Ввод строки, определение ее длины, и удаление в ней всех пробелов

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

Или воспользуйтесь поиском по форуму:
yoghurt92
373 / 344 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
18.04.2013, 13:59     Строки определение максимального количества пробелов между словами #10
Wolverine_, насколько я знаю(если не прав, поправьте) ее отдельно нужно скачивать и прописывать пути.
Yandex
Объявления
18.04.2013, 13:59     Строки определение максимального количества пробелов между словами
Ответ Создать тему
Опции темы

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