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

Удаление из строки слов, длина которых меньше заданной - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Структура для даты http://www.cyberforum.ru/cpp-beginners/thread1059357.html
Здравствуйте, у меня возникла проблема, заключается она в дате. Подробнее: в программе у меня есть структура, в ней есть дата вида: 11.11.2011 . Ну, конечно, string и все дела, все нормально, но в задании мне нужно рассмотреть промежуток времени, вводимый с клавиатуры, т.е. я ввожу начальную дату: 11.11.2003 и конечную дату: 11.11.2012 (даты типa string). На этом промежутке мне нужно посмотреть,...
C++ Найти ошибку. Динамические массивы Всем доброго времени суток! Прошу помочь найти ошибку в коде и разобраться с динамическими массивами =) Текст задания: Строка таблицы данных содержит следующую информацию о владельцах авто: ф.и.о. владельца, марка авто, год выпуска, страна производитель. Требуется найти: перечень владельцев с указанием числа их авто Что не получается: написанный мною код некорректно считывает данные из... http://www.cyberforum.ru/cpp-beginners/thread1059339.html
C++ Сделать запрос по максимальному проценту
Пишу курсовую, помогите с одним участком кода #include <iostream> #include <ctype.h> #include <conio.h> #include <fstream> #include <windows.h> #include <string.h> #include <locale.h> using namespace std;
C++ Алгоритм решения рекурсивных функций
Цель: Прошу подсказать алгоритм решения рекурсивной функции. Задача:
C++ Проверка папки на пустоту http://www.cyberforum.ru/cpp-beginners/thread1059285.html
Так как времени не было на это задание, пришлось сделать так: BOOL IsEmpty(const wchar_t* sPath) { HANDLE hFind; //дескриптор файла для "пробега" WIN32_FIND_DATAW FindFileData; //структура для описания найденного файла wchar_t DirPath; wcscpy(DirPath, sPath); wcscat(DirPath, L"\\*"); //ищем все файлы hFind = FindFirstFileW(DirPath, &FindFileData); //находим первый файл ...
C++ Обращение к методам базового класса (есть ли подобие base/super?) Понятное дело, что можно обращаться к методам базового класса так: BaseClass::hisMethod(); Однако это зависимость от названия класса. Не очень это как-то. В C# есть слово base, в Java super. Есть ли подобие в C++? И как обращаться к базовому без применения его имени? Раньше об этом не задумывался, пока не начал производить рефакторинг кода и, было решено, переименовать класс после соединения... подробнее

Показать сообщение отдельно
MicM
 Аватар для MicM
820 / 487 / 90
Регистрация: 29.12.2009
Сообщений: 1,097
Завершенные тесты: 1
28.12.2013, 20:28     Удаление из строки слов, длина которых меньше заданной
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
41
42
43
44
45
#include <iostream>
#include <string>
#include <cctype>
using std::string;
using std::cout;
using std::cin;
using std::endl;
 
int main()
{
    string str("ab abc abcdefghi abcd abcdef abc abcd abcdefg a ab abcdefg abcdef abcdefghijk");
    int n;
    cout <<str <<endl;
    cout <<"Length: ";
    cin >> n;
    unsigned int i = 0;
    string tmp;
    while (i<str.length())
    {
        if (isalpha(str[i]))
        {
            tmp.erase(0,tmp.size());
            while (i<str.length() && isalpha(str[i]))
            {
                tmp.append (1,str[i]);
                ++i;
            }
            if (tmp.size()<n)
            {
                str.erase(i-tmp.size(),tmp.size());
                i-=tmp.size();
            }
        }
        else ++i;
    }
    i = 0;
    while (i<str.length()-1)
    {
        if (str[i]==' ' && str[i+1]==' ')
            str.erase (i,1);
        else ++i;
    }
    cout <<str <<endl;
    return 0;
}
 
Текущее время: 21:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru