Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ Найти минимальное значение положительных элементов массива, расположенных до первого элемента, равного нулю Найти минимальное значение положительных элементов, расположенных до первого элемента, равного нулю. c++ https://www.cyberforum.ru/ cpp-beginners/ thread1634992.html C++ Составить матрицу, проверить столбцы на наличие нуля
Проверить, есть ли в матрице хотя бы один столбец, содержащий элемент, равный нулю, и найти номер такого столбца. Упорядочить его элементы по возрастанию. c++
C++ Список с разными типами данных, унаследованным от одного https://www.cyberforum.ru/ cpp-beginners/ thread1634987.html
Доброго времени суток! У меня имеются унаследованные классы от одного , так же имеется vector<общий_тип*> arr. В программе создаются в зависимости от условия объекты дочерних классов и push'атся в этот список. Вопрос : как мне из списка достать функции ,которые имеются только не у всех экземпляров дочерних классов ,а именно метод print() p.s может как-то ещё организовать такой список,подскажите.....
C++ Ошибка преобразования: значение типа "float *" нельзя присвоить сущности типа "float" Помогите исправить.Значение типа "float *" нельзя присвоить сущности типа float void Mode2() { const int n=20,m=20 ; float a, b; int i, j,max,min; for (int i = 0; i<n; i++) { for (int j = 0; j<m; j++) { a = (double)(rand()) / RAND_MAX*(5 - (-3)) + (-3); https://www.cyberforum.ru/ cpp-beginners/ thread1634978.html
Заполнение особого бинарного дерева C++
Собственно класс бинарного дерева я прописал (хоть и криво, не в этом дело). Но метод вставки не подходит к поставленной задачи. А именно: На вход программы подается массив (например: 1 4 6 10 0 0 0 7...), где каждый ноль это листок-затычка после которого добавлять ничего нельзя, а все числа добавляются слева на право (сложно объяснить, на скрине пример) Вот мой класс дерева: h: #pragma once...
C++ Опишите структуры данных, которые могут сохранить информацию о состоянии «кубика Рубика» https://www.cyberforum.ru/ cpp-beginners/ thread1634963.html
Опишите структуры данных, которые могут сохранить информацию о состоянии «кубика Рубика», как будут фиксироваться данные о цвете и размещении клеток.
C++ Unresolved external symbol Error 1 error LNK2001: unresolved external symbol "class std::basic_ostream<char,struct std::char_traits<char> > & __cdecl operator<<(class std::basic_ostream<char,struct std::char_traits<char> > &,class List<struct Person> *)" (??6@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@AAV01@PAV?$List@UPerson@@@@@Z) D:\C++\Work\Work\main.obj Work Реализован же этот оператор, в чем проблема?... https://www.cyberforum.ru/ cpp-beginners/ thread1634946.html C++ Построить таблицу значения функции и ее производной
условие в документе помогите пожалуйста jerom1234, пожалуйста, прочитайте правила форума и постарайтесь впредь их соблюдать: П. 5.18. Запрещено размещать задания и решения в виде картинок и других файлов с их текстом. Перепишите условие непосредственно в тело сообщения (вложение удалено).
C++ Ошибка при сохранении больших чисел в тип int (размер встроенных типов) https://www.cyberforum.ru/ cpp-beginners/ thread1634931.html
В двумерном целочисленном массиве (размер массива: N, M - указываются в ручную) найти указанное значение: - Количество элементов массива > T; - Их произведение; *T - вводится с клавиатуры. Проблема заключается в следующем: при работе с малыми числами - все хорошо, при работе с большими - не правильно находит произведение элементов. 1. Правильная работа: Матрица 3х3, нужно вывести...
C++ Вывести в окно программы hex массив byte Вот есть массив: byte AESKey; Он уже заполнен, как мне вывести в консоль в 16м виде весь этот массив? Видел где - то, но вспомнить не могу... Что - то у меня вылетает так: for (int I = 0;I<16;I++) printf("CRC : %x", AESKey); cout не работает, именно надо через какую - нибудь функцию... https://www.cyberforum.ru/ cpp-beginners/ thread1634906.html
Найти среднее арифметическое элементов массива без учёта максимального и минимального элементов C++
Нужно найти среднее арифметическое элементов массива без учёта максимального и минимального элементов. // Middle arithmetic without min and max elements of array. #include <iostream> int main() { int n, a, min, max, summ, z; float mid; printf("Middle arithmetic without min and max elements of array.\n"); printf("Input quantity of elements in array: ");
C++ Индекс элемента массива, для которого значение функции - минимально. "Мусор в выводе" Собственно поставлена следующая задача: Разработать функцию P, находящую индекс элемента массива Х, для которого зачение функции f является наименьшим из значений f(x0),...,f(xn-1). Здесь Х - одномерный массив вещественных чисел, f - некоторая функция. Используя функцию P, для каждой строки матрицы А с 7 строками и 8 столбцами найти и вывести: --Индексы элемента, для которого значение...
Эксперт С++
8739 / 4317 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
10.01.2016, 02:04 0

Алгоритм обработки вектора строк - C++ - Ответ 8600588

10.01.2016, 02:04. Показов 1624. Ответов 11
Метки (Все метки)

Ответ

http://rextester.com/QGYP65551

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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
#include <iostream>
#include <string>
#include <regex>
 
int main()
{
    // --- тестовая строчка
    std::string s (
         "12rr34 4 65 54rr32 56fg5 sdfd_  sfdsf"
         "  453dd 123_ %% ##$% df%r^  dfgfd_##gfd"
         "  455@@@5ff sf_fds  _fd  12_3"
    );
 
    // первая регулярка отбраковывает всякий хлам,
    // оставляя только цифры, буквы, и педаль
    const std::regex first("^(\\w+)$");
 
    // вторая регулярка отбраковывает те, что завершаются не цифрами
    const std::regex second("^(\\w+\\d+|\\d+)$");
 
    // третья регулярка нужна,
    // что бы из оставшихся 'буква12344буква3432'
    // повыкавыривать только циферки, игнорируя ,буквы
    const std::regex three("\\d+");
 
    std::vector<std::string> result;
    std::stringstream ss(s);
    std::string word, copy;
    while(ss)
    {
        ss >> word;
 
        // игнорирум если:
        const bool ignore
            // есть педаль
                    =   word.find('_')!=std::string::npos
            // или всякий не алфавитный хлам
                    || !std::regex_match(word, first)
            // или не завершается циферкой
                    || !std::regex_match(word, second)
            // или эта циферка не делится на 2
                    || std::stoi(word.substr(word.length()-1))%2!=0;
 
        if(ignore) continue;
 
        copy = word;
 
        // --- выкавыриваем числовую последовательность
        std::smatch m;
        std::string number;
        while (std::regex_search (copy, m, three))
            for (const auto& x: m)
                number += x,
                copy = m.suffix().str();
 
        // --- проверяем, что цыферки убывают
        char n='9';
        bool success = true;
        for (const auto& x: number)
            if( x < n )
                n = x;
            else
                { success = false; break; }
 
        if(success)
            result.emplace_back(word);
    }
 
    std::cout <<"result: ";
    for(const auto& x: result)
        std::cout <<"'"<<x<<"', ";
    std::cout <<"\n";
}


Вернуться к обсуждению:
Алгоритм обработки вектора строк C++
1
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.01.2016, 02:04
Готовые ответы и решения:

Создать функцию для обработки символьных строк. За образец брать библиотечные функции обработки строк языка С, но не применять их в своей функции
Доброго времени суток! Крайне необходима помощь экспертов в С++! Кто может - не оставьте меня в...

Реализовать функцию перемещения строк, принимающую в качестве параметров два вектора строк
Подскажите насколько правильно решена задача. условие: Напишите функцию MoveStrings, которая...

Переденлать программу обработки вектора с использованием рабочего указателя
Помогите пожалуйста данную программу обработки вектора переделать с использованием рабочего...

Создать программу получения и обработки одномерного динамического массива-вектора, состоящую из 4 частей
Нужно исправить и дописать код. Вот все, что вышло. К сожалению, в программировании полный ноль....

11
10.01.2016, 02:04
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.01.2016, 02:04
Помогаю со студенческими работами здесь

Подскажите простой алгоритм сортировки вектора из строк...
Подскажите простой алгоритм сортировки вектора из строк...

Придумать и реализовать алгоритм шифрования текста (использовать функции обработки символов и строк)
5)Придумать и реализовать алгоритм шифрования текста (использовать функции обработки символов и...

Из первых четырех строк массива сформировать четыре новых вектора (одномерные массивы). Для каждого вектора найти сумму
Дан двухмерный массив размером M x N. Преобразовать его по правилу – все элементы каждого столбца...

Алгоритм обработки радиопереключателей
Помогите пожалуйста решить проблему. Есть значения в массиве, которые будут использоваться в...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru