множества



Std set

Автор Јиршова Арина задал вопрос в разделе Другие языки и технологии

C++,построение множества и получил лучший ответ

Ответ от Carlos[гуру]
Просмотреть последовательность символов, и если какой-то символ является знаком препинания, то добавлять его в множество.
Например с помощью такого говнокода (функцию отыскания знаков препинания и печати заметь на имеющиеся) :
#include < iostream >
#include < string >
#include < set >
// код, определяюший является ли символ знаком препинания
bool is_punctuation_char(char ch) {
return ch == '.' || ch == ',';
}
// печать множества
void print_chars_set(const std::set<char> &chars_set) {
std::cout << "{";
std::set<char>::const_iterator it(chars_set.begin());
if (it != chars_set.end()) {
std::cout << "'" << *(it++) << "'";
}
for (; it != chars_set.end(); ++it) {
std::cout << ", '" << *it << "'";
}
std::cout << "}";
}
// построение множества знаков препинания по последовательности символов
template < typename InputIterator >
void build_punctuation_chars_set(
std::set< char > &punctuation_chars_set,
InputIterator begin,
InputIterator end
) {
for (; begin != end; ++begin) {
if (is_punctuation_char(*begin)) {
punctuation_chars_set.insert(*begin);
}
}
}
int main() {
// ввод последовательности символов
std::string line;
std::cout << "Input string line: " << std::flush;
std::getline(std::cin, line);
// построение множества знаков препинания
std::set<char> chars_set;
build_punctuation_chars_set(chars_set, line.begin(), line.end());
// печать найденного множества
std::cout << "Punctuation chars: ";
print_chars_set(chars_set);
std::cout << std::endl;
return 0;
}

Ответ от Зло[гуру]
создать, например, map из всех возможных знаков препинания. далее, когда в тексте находится элемент мапа - добавить его в искомое множество

Ответ от 22 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: C++,построение множества
Множество на Википедии
Посмотрите статью на википедии про Множество
Множество Мандельброта на Википедии
Посмотрите статью на википедии про Множество Мандельброта
Стандартная библиотека шаблонов на Википедии
Посмотрите статью на википедии про Стандартная библиотека шаблонов
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*